課程
/前端開發
/JavaScript
/JavaScript深入淺出
{}+[]=?
2015-03-28
源自:JavaScript深入淺出 2-2
正在回答
一個完整的語句,如果以{開頭,就會被理解為block(塊)
也就是說:
{} + []
直接這樣寫,等于被拆分為:
{} ?// 這是空塊被忽略
+[] // 這是最后返回的值
因此直接在控制臺輸入返回的是+[](空數組轉數字)也就是0.
而如果換種寫法:var n = {} + []; ?// 此時 {} 不再是塊,而是空對象字面量。
這時會嘗試轉字符串,即[object Object],而空數組轉換為字符串就是空串,所以最終返回[object Object].
langqiqi 提問者
還有0?
我猜:null
yuuk
langqiqi 提問者 回復 yuuk
舉報
由淺入深學習JS語言特性,且解析JS常見誤區,從入門到掌握
3 回答js的不等于
2 回答javascript深入淺出一共多少章?
3 回答三個等號是嚴格等于那兩個等號和一個等號是什么?
2 回答標題不能少于5個字...
3 回答問答標題不能少于5個字
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-03-29
一個完整的語句,如果以{開頭,就會被理解為block(塊)
也就是說:
{} + []
直接這樣寫,等于被拆分為:
{} ?// 這是空塊被忽略
+[] // 這是最后返回的值
因此直接在控制臺輸入返回的是+[](空數組轉數字)也就是0.
而如果換種寫法:var n = {} + []; ?// 此時 {} 不再是塊,而是空對象字面量。
這時會嘗試轉字符串,即[object Object],而空數組轉換為字符串就是空串,所以最終返回[object Object].
2015-03-28
還有0?
2015-03-28
我猜:null