【发布时间】:2017-11-02 03:42:20
【问题描述】:
版本一:
var x = [];
x['abc'] = 'd';
x['xyz'] = 'abbb';
$.each(x, function(i, el) {
console.error(el);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
不起作用。控制台中没有输出请参见此处:
我怎样才能使版本工作?
【问题讨论】:
-
这不是带有字符串索引的数组。它是一个具有两个属性的数组,您已经添加了它。长度还是0。如果要遍历属性,可以使用
Object.keys(x)。 -
不要为此使用数组。使用对象:
var x = {} -
这是怎么重复的?.....这是一个常见的陷阱。
-
你可以简单地使用 for-in: for(var _x in x){ console.log(_x,":",x[_x]); }
-
@Toskan 嗯,这是重复的因为这是一个常见的陷阱。
标签: javascript jquery arrays