2011-09-16 4 views
1

可能性の重複:
null coalescing operator for javascript?
What does “options = options || {}” mean in Javascript?"||" varステートメントの意味ですか?

誰かが私にこの表現を説明できますか?私はコードのjavascript行accrosを見つけたと私はそれが意味を疑問に思った。

var node = element.node || element[element.length - 1].node; 

ノードGETの使用下に、このような:

if (node.nextSibling) { 
      node.parentNode.insertBefore(this.node, node.nextSibling); 
     } else { 
      node.parentNode[appendChild](this.node); 
     } 

最初に私のノードは、ブールか何かでなければなりませんが、そうではありませんけれども。 私は意味が正しいと思います:nodeはelement.nodeですが、node属性が定義されていない場合、nodeは要素の配列の最後の要素ですか?

答えて

3

あなた理解は正しい行に沿っている。 element.nodeが定義されていても、falsey値(0,falseなど)の場合は、element[element.length - 1].nodeが代わりにnodeに割り当てられます。

1

それは意味し、あるいは、例えば

if this || that 

手段

"やこれやであれば"

だからコンピュータが来たら"||"その前の文が真であれば、そのif文の読み込みを停止し、下にあるコードを自動的に実行します。

"||"それ以外の場合はとなり、偽である、それは、次のいずれかをチェックします、とelement.node値がブール式で真表している場合ように...それは意味

2

nodeelement.nodeなりますelement[element.length - 1].node

関連する問題