作者waneblade (正向思考)
看板Ajax
標題Re: [問題] 新手請教 這種寫法是什麼意思呢?
時間Tue May 28 21:53:27 2013
※ 引述《kencool107 (臉都歪了)》之銘言:
: 今天在研究別人寫的javascript
: 看到一行
: window.A || (function(window) {})
: 這種寫法是代表什麼意思呢
: 還請各位賜教
: 謝謝
不知道你看到的是不是這個,
temp = temp || 3;
如果temp為null
則 temp 為 3
若不為null
則temp為本來temp的值
如果下一行執行
temp = temp || 4;
這個時侯temp還是3,因為本來的temp不為null
除了temp 為null之外undefined, NaN,"",0,false也會有一樣的效果
常用在防止已被new過的物件又被new一次
var foo;
function callMe(){
foo = foo || (new bar());
}
重覆callMe()這個function,foo只有在第一次會被new出來,
之後都會直接用本來的值
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.251.122.47
※ 編輯: waneblade 來自: 111.251.122.47 (05/28 21:53)
1F:推 s25g5d4:他看到的那個後面應該是跟立即函式 (不過原文少了括號 05/28 22:03
2F:→ s25g5d4:可能是原PO打錯) 我認為應該是用來檢查window.A是否已被 05/28 22:03
3F:→ s25g5d4:建立.. 05/28 22:03
4F:→ s25g5d4:更正 檢查window.A是否存在 05/28 22:03