JS中in运算符有个小疑点

JS中in运算符有个小问题var data[7,8,9]0 in data//true1 in data//true2 in data//true3 in

JS中in运算符有个小问题
var data=[7,8,9];
"0" in data;//true
"1" in data;//true
"2" in data;//true
"3" in data;//false
0 in data;//true
1 in data;//true
2 in data;//true
3 in data;//false
加引号与不加引号都是代表下标吗?
[解决办法]
对于数组应该是的。


var a = [1,2,3];
alert(a[0]===a['0']);
a['0'] = 100;
alert(a[0]);