在运算符中,数字将转换为字符串

时间:2014-02-23 08:10:46

标签: javascript

我正在了解in运算符。

var data = [7,8,9];
"0" in data // => true: array has an element "0"
1 in data   // => true: numbers are converted to strings
3 in data   // => false: no element 3

我理解“0”是数据(7)中的元素。 “数据中的1”=>真正??由于“数字被转换为字符串。”这个逻辑“数据中的3”也应该是真的。

编辑:好的。我现在看到了...... - _ -

来源:O'Reilly的Javascript the权利指南。

2 个答案:

答案 0 :(得分:1)

1 in data 这是检查索引1是否存在元素 8存在于索引1

3 in data 这是检查索引3是否存在元素 索引3中没有任何内容(索引从0变为2)

答案 1 :(得分:0)

如果您尝试迭代数组:

for (a in data) console.log(a)

你会看到0,1,2

这就是数组的工作原理。迭代对象属性不一样。

这些是索引。