Q
對象和陣列增加
14
A
回答
13
下面是對此的全面說明,check it。
並注意{} + {}
是NaN
如果你因爲{}
被認爲是一個塊,而不是一個對象直接在控制檯執行。
({}+{})
應當'[object Object][object Object]'
真正的結果是:
console.log({}+{}) // '[object Object][object Object]'
console.log([]+{}) // '[object Object]'
console.log({}+[]) // '[object Object]'
console.log([]+[]) // ''
2
與任何對象和它的字符串表示總是導致加入
例如添加數組:
[1] + [2] // is merged to "12", so [] + [] is an empty string ""
同樣等於爲你的第二個例子
['test'] + {} // "test[object Object]"
所以空數組加上一個空的對象將只返回一個[object Object]
用於添加到空的對象很容易太:
評估一個簡單的空對象:{} // results in undefined
並且添加兩個undefined
值是NaN
,因爲您無法對它們進行添加。
注意:返回值取決於執行JavaScript(也就是在瀏覽器或環境)
0
{} + {}
你不能添加或任何操作兩個對象
[] + {} // "[object Object]"
它只是一個字符串和一個對象之間的concat,你有相同的結果下用alert({});
{} + [] // 0
相同
[] + [] // ""
的concat兩個空字符串=空字符串。
相關問題
- 1. 陣列只是不斷增加的對象和內存崩潰
- 2. 增加陣列
- 3. 將對象添加到對象陣列
- 4. PHP加載對象陣列
- 5. reactJS添加對象陣列
- 6. JS對象陣列vs JS對象陣列效率和性能
- 7. 增加一個陣列內多個對象數值
- 8. 與多個陣列工作,並增加對象
- 9. 增廣對象的陣營
- 10. 陣列和全局對象
- 11. 混合陣列和對象
- 12. QJsonDocument ::陣列()和QJsonDocument ::對象()
- 13. 混合陣列和對象
- 14. Javascript陣列和對象/類
- 15. $手錶和對象陣列
- 16. Python3:遍歷對象和屬性添加到陣列或對象
- 17. 陣列陣列或對象
- 18. 對象陣列
- 19. 陣列陣列轉換(增加尺寸和格式的數)
- 20. 試圖增加陣列
- 21. 值增加鍵陣列JQ
- 22. simplexml對象和對方陣列
- 23. PHP對象陣列
- 24. PHP對象陣列
- 25. 對象與陣列
- 26. JSON陣列對象
- 27. 重新排列WP_Post對象和陣列陣列
- 28. 如何陣列添加到JavaScript對象
- 29. NsMutable陣列不添加對象iOS
- 30. 添加JavaScript對象到多個陣列
我認爲'{} + []'實際上是''0''(一個字符串)而不是'0'(一個數字)。 – DaoWen 2012-08-13 08:38:49
@DaoWen,它實際上是一個Integer'0' – Adi 2012-08-13 08:39:50
no sir,它是一個整數,如果你喜歡,可以在chromes控制檯中測試它。 – Hilmi 2012-08-13 08:40:41