||运算符在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'的味道。

出处:http://www.zhaiqianfeng.com    
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/zhaiqianfeng/p/4616977.html