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. reactJS添加对象阵列
- 3. PHP加载对象阵列
- 4. 增加一个阵列内多个对象数值
- 5. 增广对象的阵营
- 6. 混合阵列和对象
- 7. QJsonDocument ::阵列()和QJsonDocument ::对象()
- 8. 对象阵列
- 9. 阵列阵列转换(增加尺寸和格式的数)
- 10. 值增加键阵列JQ
- 11. simplexml对象和对方阵列
- 12. 对象与阵列
- 13. PHP对象阵列
- 14. NsMutable阵列不添加对象iOS
- 15. 将新对象添加到2D阵列
- 16. 为按钮添加阵列对象
- 17. 无法添加对象NS阵列
- 18. 动态对象添加到阵列
- 19. 我的阵列没有添加对象
- 20. 新的对象添加到阵列
- 21. 的cocos2d sigleton阵列不加入对象
- 22. 将阵列浇铸到对象阵列
- 23. 访问对象的JSONB阵列阵列
- 24. 会议对象阵列内有阵列
- 25. Java对象阵列中的对象阵列
- 26. Array对象的含有阵列对象的阵列
- 27. Lodash对象阵列在对象阵列内
- 28. JavaScript对象文字和阵列
- 29. jQuery和表格对象阵列
- 30. lodash:阵列滤波器和对象
我认为'{} + []'实际上是''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