再来几个函数,getCookie(),getQuery(),DateDiff(),DateAdd(),b2s(),原+改
--------------------------------------------------------------------------------
function
getCookie(mainKey,subKey) {
var reg = new RegExp("(^|
)"+mainKey+"=([^;]*)(;|$)");
var arr = document.cookie.match(reg);
if
(arguments.length == 2) {
if (arr!=null)
return
key(subKey,arr[2]);
else
return null;
} else if (arguments.length == 1)
{
if (arr!=null)
return unescape(arr[2]);
else
return
null;
}
function key(subKey,findWith) {
var arr,reg = new
RegExp("(^| |&)"+subKey+"=([^&]*)(&|$)");
var findWith =
findWith?findWith:document.cookie;
if (arr = findWith.match(reg))
return
unescape(arr[2]);
else
return null;
}
}
function
getQuery(name) {
var reg = new
RegExp("(^|&)"+name+"=([^&]*)(&|$)");
var r =
location.search.substr(1).match(reg)
if (r!=null) return
unescape(r[2]);
}
function DateAdd(strInterval, NumDay, dtDate)
{
var dtTmp = new Date(dtDate);
if (isNaN(dtTmp)) dtTmp = new
Date();
switch (strInterval) {
case "s":return new Date(Date.parse(dtTmp)
+ (1000 * NumDay));
case "n":return new Date(Date.parse(dtTmp) + (60000 *
NumDay));
case "h":return new Date(Date.parse(dtTmp) + (3600000 *
NumDay));
case "d":return new Date(Date.parse(dtTmp) + (86400000 *
NumDay));
case "w":return new Date(Date.parse(dtTmp) + ((86400000 * 7) *
NumDay));
case "m":return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) +
NumDay, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(),
dtTmp.getSeconds());
case "y":return new Date((dtTmp.getFullYear() + NumDay),
dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(),
dtTmp.getSeconds());
}
}
// DateDiff("m","2002/12/1
00:00:00","2004/12/1 00:00:00")
function DateDiff(strInterval, dtStart,
dtEnd) {
var dtStart = new Date(dtStart);
if (isNaN(dtStart)) dtStart =
new Date();
var dtEnd = new Date(dtEnd);
if (isNaN(dtEnd)) dtEnd = new
Date();
switch (strInterval) {
case "s":return parseInt((dtEnd - dtStart)
/ 1000);
case "n":return parseInt((dtEnd - dtStart) / 60000);
case
"h":return parseInt((dtEnd - dtStart) / 3600000);
case "d":return
parseInt((dtEnd - dtStart) / 86400000);
case "w":return parseInt((dtEnd -
dtStart) / (86400000 * 7));
case "m":return
(dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12) -
(dtStart.getMonth()+1);
case "y":return dtEnd.getFullYear() -
dtStart.getFullYear();
}
}
//
b2s("11新浪网!@#程序员_+}{:><")
function b2s(strng) {
var Matches =
strng.match(/[x21-x7e]/g);
for (var i=0;i
strng =
strng.replace(Matches[i],String.fromCharCode(Matches[i].charCodeAt
(0)+65248))
}
return
strng;
}
来几个,IE5下原型扩展
--------------------------------------------------------------------------------
/*Number
Object*/
if(!Number.prototype.toFixed) {
Number.prototype.toFixed =
function(n) {
with(Math) return
round(Number(this)*pow(10,n))/pow(10,n)
}
}
/*Array Object*/
if
(!Array.prototype.pop) {
Array.prototype.pop = function() {
var
lastElement = this[this.length-1];
this.length =
Math.max(this.length-1,0);
return lastElement;
}
}
if
(!Array.prototype.push) {
Array.prototype.push = function() {
for(var
i=0;i
this[this.length]=arguments[i];
}
return this.length;
}
}
if
(!Array.prototype.shift) {
Array.prototype.shift = function() {
var
firstElement =
this[0];
this.reverse();
this.pop();
this.reverse();
return
firstElement;
}
}
if (!Array.prototype.splice)
{
Array.prototype.splice = function() {
var start = arguments[0];
var
deleteCount = start+arguments[1];
var deleteItem =
this.slice(start,deleteCount);
var beforeItem = this.slice(0,start);
var
afterItem = this.slice(deleteCount);
this.length=beforeItem.length;
var
i;
for (i=2;i
for
(i=0;i
return
deleteItem;
}
}
if (!Array.prototype.unshift)
{
Array.prototype.unshift = function() {
var arr = new Array();
for
(var i=0;i
arr =
arr.concat(this);
this.length = 0;
for
(i=0;i
}
}[@more@]
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/9650775/viewspace-922728/
,如需转载,请注明出处,否则将追究法律责任。