javascript常用函数归纳整理


Posted in Javascript onOctober 31, 2014

本文整理归纳了一些js常用函数,其中包括对数据操作,字符替换操作,日期及加解密操作函数,还有一些简单的验证函数。便于大家查阅参考。相信对大家会有所帮助。

1.typeof、constructor、instanceof对数组的判断

var arr = [1,5,6,9,8,5,4];

//var arr = new Array(1,5,6,9,8,5,4);

console.log(typeof arr);//object

console.log(arr.constructor());//[]

console.log(arr instanceof Array);//true

2.函数自调用
(function (a, b) {

    console.log(a + b);//30 自调用

})(10, 20);3.去除两边空格

function trim (str) {

    return str.replace(/^s+|s+$/g, '');

}

console.log('   woshi   sss   ');//   woshi   sss   

console.log(trim('   woshi   sss   '));//woshi   sss

4.数字判断

function isNumber(n){

    return !isNaN(parseFloat(n)) && isFinite(n);

}

console.log(isNumber('e345'));

5.数组判断
function isArray(obj){

    return Object.prototype.toString.call(obj) === '[object Array]' ;

}

console.log(isArray(arr));

6.length的理解
var myArray = [12 , 222 , 1000 ];

myArray.length = 0; // myArray 会变成空数组[].----- length是可读可写的属性

7、base64_encode加密,解密
function base64encode(str){

    var out,i,len,base64EncodeChars="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";

    var c1,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);

    }

    return out;

}

function base64decode(str){

    var c1,c2,c3,c4,base64DecodeChars=new Array(-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);

    var i,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) return out;

            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) return out;

            c4=base64DecodeChars[c4];

        }while(i<len&&c4==-1);

        if(c4==-1) break;

        out+=String.fromCharCode(((c3&0x03)<<6)|c4);

    }

    return out;

}

function utf16to8(str){

    var out,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);

        } else if(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));

        }

    }

    return out;

}

function utf8to16(str){

    var out,i,len,c;

    var char2,char3;

    out="";

    len=str.length;

    i=0;

    while(i<len){

        c=str.charCodeAt(i++);

        switch (c>>4){

        case 0:

        case 1:

        case 2:

        case 3:

        case 4:

        case 5:

        case 6:

        case 7:

            // 0xxxxxxx

            out+=str.charAt(i-1);

            break;

        case 12:

        case 13:

            // 110x xxxx   10xx xxxx

            char2=str.charCodeAt(i++);

            out+=String.fromCharCode(((c&0x1F)<<6)|(char2&0x3F));

            break;

        case 14:

            // 1110 xxxx  10xx xxxx  10xx xxxx

            char2=str.charCodeAt(i++);

            char3=str.charCodeAt(i++);

            out+=String.fromCharCode(((c&0x0F)<<12)|((char2&0x3F)<<6)|((char3&0x3F)<<0));

            break;

        }

    }

    return out;

}

8、日期时间
getDay函数:返回星期几,值为0~6,其中0表示星期日,1表示星期一,...,6表示星期六。例:
function DateDemo()  

{  

var d, day, x, s = "Today is: ";  

var x = new Array("Sunday", "Monday", "Tuesday");  

var x = x.concat("Wednesday","Thursday", "Friday");  

var x = x.concat("Saturday");  

d = new Date();  

day = d.getDay();  

return(s += x[day]);  

}

(3)getHouse函数:返回日期的"小时"部分,值为0~23。例。
function TimeDemo()  

{  

var d, s = "The current local time is: ";  

var c = ":";  

d = new Date();  

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程序设计有所帮助。

Javascript 相关文章推荐
jquery里的正则表达式说明
Aug 03 Javascript
javascript面向对象之定义成员方法实例分析
Jan 13 Javascript
浅谈轻量级js模板引擎simplite
Feb 13 Javascript
在AngularJS应用中实现一些动画效果的代码
Jun 18 Javascript
编写高性能Javascript代码的N条建议
Oct 12 Javascript
微信小程序 教程之wxapp 视图容器 view
Oct 19 Javascript
jQuery中的siblings()是什么意思(推荐)
Dec 29 Javascript
详解JavaScript树结构
Jan 09 Javascript
ES6新特性之函数的扩展实例详解
Apr 01 Javascript
vue 2.0项目中如何引入element-ui详解
Sep 06 Javascript
Vue EventBus自定义组件事件传递
Jun 25 Javascript
微信小程序如何实现在线客服功能
Oct 16 Javascript
让html页面不缓存js的实现方法
Oct 31 #Javascript
js读取cookie方法总结
Oct 31 #Javascript
jQuery获取对象简单实现方法小结
Oct 30 #Javascript
js 通过cookie实现刷新不变化树形菜单
Oct 30 #Javascript
判断字符串的长度(优化版)中文占两个字符
Oct 30 #Javascript
javascript根据时间生成m位随机数最大13位
Oct 30 #Javascript
D3.js 从P元素的创建开始(显示可加载数据)
Oct 30 #Javascript
You might like
php数据库抽象层 PDO
2011/05/07 PHP
PHP开发Apache服务器配置
2015/07/15 PHP
Zend Framework常用校验器详解
2016/12/09 PHP
PHP实用小技巧之调用录像的方法
2019/12/05 PHP
Javascript 布尔型分析
2008/12/22 Javascript
jQuery对象和Javascript对象之间转换的实例代码
2013/03/20 Javascript
JS完成代码前最好对其做5件事
2013/04/07 Javascript
jQuery对象数据缓存Cache原理及jQuery.data方法区别介绍
2013/04/07 Javascript
js 中的switch表达式使用示例
2020/06/03 Javascript
jquery处理json对象
2014/11/03 Javascript
使用jQuery中的wrap()函数操作HTML元素的教程
2016/05/24 Javascript
jQuery使用getJSON方法获取json数据完整示例
2016/09/13 Javascript
微信开发 js实现tabs选项卡效果
2016/10/28 Javascript
基于Vue2.X的路由和钩子函数详解
2018/02/09 Javascript
React-redux实现小案例(todolist)的过程
2019/09/29 Javascript
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
2021/01/22 Vue.js
[01:12]DOTA2 2015年秋季互动指南
2015/11/10 DOTA
[02:52]2017DOTA2国际邀请赛中国区预选赛晋级之路
2017/07/03 DOTA
Python 序列化 pickle/cPickle模块使用介绍
2014/11/30 Python
Python中操作文件之write()方法的使用教程
2015/05/25 Python
Python中特殊函数集锦
2015/07/27 Python
Python+tkinter使用80行代码实现一个计算器实例
2018/01/16 Python
Python将文字转成语音并读出来的实例详解
2019/07/15 Python
Python编写打字训练小程序
2019/09/26 Python
Python多线程模块Threading用法示例小结
2019/11/09 Python
python的列表List求均值和中位数实例
2020/03/03 Python
python打开文件的方式有哪些
2020/06/29 Python
用css3实现当鼠标移进去时当前亮其他变灰效果
2014/04/08 HTML / CSS
CSS3实现超酷的黑猫警长首页
2016/04/26 HTML / CSS
澳大利亚设计的优质鞋类和适合澳大利亚生活方式的服装:Rivers
2019/04/23 全球购物
Hawes & Curtis官网:英国经典品牌
2019/07/27 全球购物
口腔医学技术应届生求职信
2013/11/09 职场文书
期末自我鉴定
2014/02/02 职场文书
道歉的话怎么说
2015/05/12 职场文书
幼儿园心得体会范文
2016/01/21 职场文书
Python集合set()使用的方法详解
2022/03/18 Python