what does the “||” in a var statement mean?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
null coalescing operator for javascript?
What does “options = options || {}” mean in Javascript?
有人能给我解释一下这个表达方式吗?我偶然发现了一行javascript代码,我想知道它是什么意思。
1 | var node = element.node || element[element.length - 1].node; |
使用的节点get如下:
1 2 3 4 5 | if (node.nextSibling) { node.parentNode.insertBefore(this.node, node.nextSibling); } else { node.parentNode[appendChild](this.node); } |
起初我认为节点应该是一个布尔型的或者其他什么类型的,但事实并非如此。如果我认为意思是:node是element.node,但是如果node属性是undefined,那么node是元素数组中的最后一个元素,对吗?
简单回答:表示
参考:http://www.w3schools.com/js/js_operators.asp
您的理解是正确的;请注意,即使定义了
这意味着,如果
它意味着或
例如:
1 | if this || that |
意思是"如果这个或那个"
因此,当计算机进入代码的""部分时,如果前面的语句为真,它将停止读取if语句并自动执行下面的代码。
如果该""之前的项是假的,那么它将检查下一项,依此类推…