二分之一

Just Jason's Blog

javascript中的几个小技巧及原理

以下的几个小技巧,其实考察的是对JS基础知识的掌握和理解。基础的东西一定要打牢固,才能向使你的编码能力有台阶性的上升。

1、简短取当前时间戳。

普通青年的做法:

var time = new Date().getTime();

文艺青年的做法:

var time = (+(new Date));
//或
var time = +(new Date);

效果是一样的,但是文艺青年的做法,明显优雅一些,不过可读性视各位的基础而定。

原理:

大家知道小括号的作用吗?小括号能把我们的表达式组合分块,并且每一块,也就是每一对小括号,都有一个返回值。(new Date)其实就是返回当前的Date对象。

一元加操作符(+),放在数字前面,对数值不会产生任何影响。但放在非数值类型的前面,相当于Number()转型函数。+(new Date)就返回了时间戳数字。但为什么外面还需要一对括号呢,如果用于赋值操作,可有可无,但用于字符串连接操作时,一定要加上。

2、布尔操作符的妙用

判断一个字符串为空 var str = “”;

普通青年的做法:

if(str==''){
    alert("字会串是空的哦!");
}

文艺青年的做法:

if(!str){
    alert("字会串是空的哦!");
}

原理:

逻辑非(!)操作符,放在值前面,无论这个值是什么数据类型,这个操作符都会返回一个布尔型,然后再对其求反。 两个”!!”,实际上就相当于应用Boolean()函数转型。

3、逻辑与操作符(&&)的妙用

a(),和 b(); b的执行需a()返回值为true才能执行,否则不执行。

普通青年的做法:

if(a()){
    b();
}

文艺青年的做法:

a() && b();

原理:

逻辑与属于短路操作,如果第一个操作数能够决定结果,那么不会对第二个操作数进行求值。 当a();返回false时,就注定整个表达式为false,无需运行b();

最后修改时间:2014年9月8日星期一晚上8点57