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 相关文章推荐
避免回车键导致的页面无意义刷新的解决方法
Apr 12 Javascript
javascript通过class来获取元素实现代码
Feb 20 Javascript
javasript实现密码的隐藏与显示
May 08 Javascript
jQuery插件版本冲突的处理方法分析
Jan 16 Javascript
js Canvas绘制圆形时钟效果
Feb 17 Javascript
使用proxy实现一个更优雅的vue【推荐】
Jun 19 Javascript
快速解决vue-cli在ie9+中无效的问题
Sep 04 Javascript
4个顶级JavaScript高级文本编辑器
Oct 10 Javascript
微信小程序实现的点击按钮 弹出底部上拉菜单功能示例
Dec 20 Javascript
JavaScript函数的4种调用方法实例分析
Mar 05 Javascript
Vue实现导航栏的显示开关控制
Nov 01 Javascript
Openlayers显示瓦片网格信息的方法
Sep 28 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教程 预定义变量
2009/10/23 PHP
微信公众平台开发-微信服务器IP接口实例(含源码)
2017/03/05 PHP
PHP数组与字符串互相转换实例
2020/05/05 PHP
JS 添加网页桌面快捷方式的代码详细整理
2012/12/27 Javascript
js Select下拉列表框进行多选、移除、交换内容的具体实现方法
2013/08/13 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
JavaScript设计模式之抽象工厂模式介绍
2014/12/28 Javascript
js+html5获取用户地理位置信息并在Google地图上显示的方法
2015/06/05 Javascript
jQuery实现列表内容的动态载入特效
2015/08/08 Javascript
轻松学习jQuery插件EasyUI EasyUI创建菜单与按钮
2015/11/30 Javascript
JavaScript知识点总结(十一)之js中的Object类详解
2016/05/31 Javascript
JS继承之借用构造函数继承和组合继承
2016/09/07 Javascript
JS简单实现禁止访问某个页面的方法
2016/09/13 Javascript
JS实现动态增加和删除li标签行的实例代码
2016/10/16 Javascript
详解Javascript函数声明与递归调用
2016/10/22 Javascript
从零开始做一个pagination分页组件
2017/03/15 Javascript
Express框架之connect-flash详解
2017/05/31 Javascript
谈谈JS中的!!
2017/12/07 Javascript
Vue.js做select下拉列表的实例(ul-li标签仿select标签)
2018/03/02 Javascript
详解微信小程序获取当前时间及日期的方法
2019/04/28 Javascript
[01:21]DOTA2 新英雄 森海飞霞
2020/12/18 DOTA
Python爬取qq music中的音乐url及批量下载
2017/03/23 Python
python实现石头剪刀布程序
2021/01/20 Python
Django框架中间件定义与使用方法案例分析
2019/11/28 Python
Django静态文件加载失败解决方案
2020/08/26 Python
ghd法国官方网站:英国最受欢迎的美发工具品牌
2019/04/18 全球购物
幼师专业毕业生自荐信
2013/09/29 职场文书
高中生毕业自我鉴定
2013/10/10 职场文书
建筑人员岗位职责
2013/12/25 职场文书
卫生系统先进事迹
2014/05/13 职场文书
大学同学会活动方案
2014/08/20 职场文书
财务部会计岗位职责
2015/02/03 职场文书
写给女朋友的检讨书
2015/05/06 职场文书
2015年药品销售工作总结范文
2015/05/25 职场文书
八年级作文之感恩
2019/11/22 职场文书
ubuntu安装jupyter并设置远程访问的实现
2022/03/31 Python