首页 > 语言 > JavaScript > 正文

JavaScript编程学习技巧汇总

2024-05-06 15:01:01
字体:
来源:转载
供稿:网友

本文实例为大家分享了JavaScript编程学习技巧,供大家参考,具体内容如下

1、变量转换

varmyVar="3.14159",str=""+myVar,//tostringint=~~myVar,//tointegerfloat=1*myVar,//tofloatbool=!!myVar,/*toboolean-anystringwithlengthandanynumberexcept0aretrue*/array=[myVar];//toarray

但是转换日期(new Date(myVar))和正则表达式(new RegExp(myVar))必须使用构造函数,创建正则表达式的时候要使用/pattern/flags这样的简化形式。

2、取整同时转换成数值型

//字符型变量参与运算时,JS会自动将其转换为数值型(如果无法转化,变为NaN)'10.567890'|0//结果:10//JS里面的所有数值型都是双精度浮点数,因此,JS在进行位运算时,会首先将这些数字运算数转换为整数,然后再执行运算//|是二进制或,x|0永远等于x;^为异或,同0异1,所以x^0还是永远等于x;至于~是按位取反,搞了两次以后值当然是一样的'10.567890'^0//结果:10-2.23456789|0//结果:-2

3、日期转数值

//JS本身时间的内部表示形式就是Unix时间戳,以毫秒为单位记录着当前距离1970年1月1日0点的时间单位vard=+newDate();//1295698416792

4、类数组对象转数组

vararr=[].slice.call(arguments)下面的实例用的更绝functiontest(){varres=['item1','item2']res=res.concat(Array.prototype.slice.call(arguments))//方法1Array.prototype.push.apply(res,arguments)//方法2}

5、进制之间的转换

(int).toString(16);//convertsinttohex,eg12=>"C"(int).toString(8);//convertsinttooctal,eg.12=>"14"parseInt(string,16)//convertshextoint,eg."FF"=>255parseInt(string,8)//convertsoctaltoint,eg."20"=>16将一个数组插入另一个数组指定的位置vara=[1,2,3,7,8,9];varb=[4,5,6];varinsertIndex=3;a.splice.apply(a,Array.prototype.concat(insertIndex,0,b));

6、删除数组元素

vara=[1,2,3,4,5];a.splice(3,1);//a=[1,2,3,5]

大家也许会想为什么要用splice而不用delete,因为用delete将会在数组里留下一个空洞,而且后面的下标也并没有递减。
7、判断是否为IE

varie=/*@cc_on!@*/false;

这样一句简单的话就可以判断是否为ie,太。。。

其实还有更多妙的方法,请看下面

//edithttp://www.lai18.com//貌似是最短的,利用IE不支持标准的ECMAscript中数组末逗号忽略的机制varie=!-[1,];//利用了IE的条件注释varie=/*@cc_on!@*/false;//还是条件注释varie//@cc_on=1;//IE不支持垂直制表符varie='v'=='v';//原理同上varie=!+"v1";

学到这个瞬间觉得自己弱爆了。

尽量利用原生方法

要找一组数字中的最大数,我们可能会写一个循环,例如:

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选