为什么Number([])=== 0和Number({})===在NaN中?

我正在看着 http://zero.milosz.ca/的第一张表,想知道为什么,例如0 == []和0!= {}.我假设是因为Number([])== 0和Number({})== NaN.但是,这部分似乎是武断的.为什么是空列表0和空对象是NaN?
使用Number(some_object)将使用给定对象的字符串表示形式.对于您的示例,字符串表示形式为:

js> ({}).toString();
[object Object]
js> [].toString();

js>

字符串'[object Object]’无法转换为数字,但空字符串可以.

相关文章
相关标签/搜索