2010-10-08 67 views
1

我試圖使用||運營商作爲「默認」操作員在(http://www.crockford.com/javascript/survey.html)由克羅克福德描述:javascript參考錯誤默認運算

||運算符通常被稱爲邏輯或。它也可以被稱爲默認。如果第一個操作數爲假,空,未定義,「」(空字符串)或數字0,則返回第二個操作數。否則,它返回第一個操作數。這提供了一種方便的方式來指定默認值:

value = v || 10; /* Use the value of v, but if v 
doesn't have a value, use 10 instead. */ 

當我鍵入到螢火蟲JavaScript控制檯會報告錯誤:的ReferenceError:V是沒有定義的,並且不會去到值設置爲10

這是預期的行爲?

回答

3

是的。如果你還沒有告訴JavaScript,「v」是一個變量,它會抱怨。你可以做兩件事情之一來解決此:

var v; 
value = v || 10; 

value = window.v || 10; 
+0

感謝。第二個選項看起來像我想要做的。 – 2010-10-08 21:42:07