||运算符在JavaScript的另类用法

||运算符的含义:如果||的第一个运算数是true,也不再考虑第二个运算数,否则计算后面的表达式并返回。

通常我们把它用于判断语句中,但可以巧妙的运用于赋值,达到默认值的效果。

比如:

function User{
    this.name;
}
var u=new User();
var name=u.name || 'oseye';
alert(name); //返回oseye

如何理解呢?

u.name未被初始化,所以是undefined,undefined为false,所以继续计算oseye,并返回.

u.name || 'oseye'有点u.name?u.name:'oseye'的味道。

posted @ 2012-08-07 09:01  码农神说  阅读(159)  评论(0编辑  收藏  举报