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