javascript常用函数归纳整理
本文整理归纳了一些js常用函数,其中包括对数据操作,字符替换操作,日期及加解密操作函数,还有一些简单的验证函数。便于大家查阅参考。相信对大家会有所帮助。
1.typeof、constructor、instanceof对数组的判断
vararr=[1,5,6,9,8,5,4]; //vararr=newArray(1,5,6,9,8,5,4); console.log(typeofarr);//object console.log(arr.constructor());//[] console.log(arrinstanceofArray);//true
2.函数自调用
(function(a,b){ console.log(a+b);//30自调用 })(10,20);3.去除两边空格 functiontrim(str){ returnstr.replace(/^s+|s+$/g,''); } console.log(' woshi sss ');// woshi sss console.log(trim(' woshi sss '));//woshi sss
4.数字判断
functionisNumber(n){ return!isNaN(parseFloat(n))&&isFinite(n); } console.log(isNumber('e345'));
5.数组判断
functionisArray(obj){ returnObject.prototype.toString.call(obj)==='[objectArray]'; } console.log(isArray(arr));
6.length的理解
varmyArray=[12,222,1000]; myArray.length=0;//myArray会变成空数组[].-----length是可读可写的属性
7、base64_encode加密,解密
functionbase64encode(str){ varout,i,len,base64EncodeChars="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; varc1,c2,c3; len=str.length; i=0; out=""; while(i<len){ c1=str.charCodeAt(i++)&0xff; if(i==len){ out+=base64EncodeChars.charAt(c1>>2); out+=base64EncodeChars.charAt((c1&0x3)<<4); out+="=="; break; } c2=str.charCodeAt(i++); if(i==len){ out+=base64EncodeChars.charAt(c1>>2); out+=base64EncodeChars.charAt(((c1&0x3)<<4)|((c2&0xF0)>>4)); out+=base64EncodeChars.charAt((c2&0xF)<<2); out+="="; break; } c3=str.charCodeAt(i++); out+=base64EncodeChars.charAt(c1>>2); out+=base64EncodeChars.charAt(((c1&0x3)<<4)|((c2&0xF0)>>4)); out+=base64EncodeChars.charAt(((c2&0xF)<<2)|((c3&0xC0)>>6)); out+=base64EncodeChars.charAt(c3&0x3F); } returnout; } functionbase64decode(str){ varc1,c2,c3,c4,base64DecodeChars=newArray(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1); vari,len,out; len=str.length; i=0; out=""; while(i<len){ /*c1*/ do{ c1=base64DecodeChars[str.charCodeAt(i++)&0xff]; }while(i<len&&c1==-1); if(c1==-1)break; /*c2*/ do{ c2=base64DecodeChars[str.charCodeAt(i++)&0xff]; }while(i<len&&c2==-1); if(c2==-1)break; out+=String.fromCharCode((c1<<2)|((c2&0x30)>>4)); /*c3*/ do{ c3=str.charCodeAt(i++)&0xff; if(c3==61)returnout; c3=base64DecodeChars[c3]; }while(i<len&&c3==-1); if(c3==-1)break; out+=String.fromCharCode(((c2&0XF)<<4)|((c3&0x3C)>>2)); /*c4*/ do{ c4=str.charCodeAt(i++)&0xff; if(c4==61)returnout; c4=base64DecodeChars[c4]; }while(i<len&&c4==-1); if(c4==-1)break; out+=String.fromCharCode(((c3&0x03)<<6)|c4); } returnout; } functionutf16to8(str){ varout,i,len,c; out=""; len=str.length; for(i=0;i<len;i++){ c=str.charCodeAt(i); if((c>=0x0001)&&(c<=0x007F)){ out+=str.charAt(i); }elseif(c>0x07FF){ out+=String.fromCharCode(0xE0|((c>>12)&0x0F)); out+=String.fromCharCode(0x80|((c>>6)&0x3F)); out+=String.fromCharCode(0x80|((c>>0)&0x3F)); }else{ out+=String.fromCharCode(0xC0|((c>>6)&0x1F)); out+=String.fromCharCode(0x80|((c>>0)&0x3F)); } } returnout; } functionutf8to16(str){ varout,i,len,c; varchar2,char3; out=""; len=str.length; i=0; while(i<len){ c=str.charCodeAt(i++); switch(c>>4){ case0: case1: case2: case3: case4: case5: case6: case7: //0xxxxxxx out+=str.charAt(i-1); break; case12: case13: //110xxxxx 10xxxxxx char2=str.charCodeAt(i++); out+=String.fromCharCode(((c&0x1F)<<6)|(char2&0x3F)); break; case14: //1110xxxx 10xxxxxx 10xxxxxx char2=str.charCodeAt(i++); char3=str.charCodeAt(i++); out+=String.fromCharCode(((c&0x0F)<<12)|((char2&0x3F)<<6)|((char3&0x3F)<<0)); break; } } returnout; }
8、日期时间
getDay函数:返回星期几,值为0~6,其中0表示星期日,1表示星期一,...,6表示星期六。例:
functionDateDemo() { vard,day,x,s="Todayis:"; varx=newArray("Sunday","Monday","Tuesday"); varx=x.concat("Wednesday","Thursday","Friday"); varx=x.concat("Saturday"); d=newDate(); day=d.getDay(); return(s+=x[day]); }
(3)getHouse函数:返回日期的"小时"部分,值为0~23。例。
functionTimeDemo() { vard,s="Thecurrentlocaltimeis:"; varc=":"; d=newDate(); s+=d.getHours()+c; s+=d.getMinutes()+c; s+=d.getSeconds()+c; s+=d.getMilliseconds(); return(s); }
(4)getMinutes函数:返回日期的"分钟"部分,值为0~59。见上例。
(5)getMonth函数:返回日期的"月"部分,值为0~11。其中0表示1月,2表示3月,...,11表示12月。见前面的例子。
(6)getSeconds函数:返回日期的"秒"部分,值为0~59。见前面的例子。
(7)getTime函数:返回系统时间。
希望本文所述对大家的javascript程序设计有所帮助。