使用for in循环遍历javascript对象时,如何在for循环中访问迭代器的位置?
a = {some: 1, thing: 2};
for (obj in a) {
if (/* How can I access the first iteration*/) {
// Do something different on the first iteration
}
else {
// Do something
}
}
答案 0 :(得分:1)
Javascript对象的属性没有排序。 {some: 1, thing: 2}
与{thing: 2, some: 1}
但是如果你想使用迭代器继续跟踪,请执行以下操作:
var i = 0;
for (obj in a) {
if (i == 0) {
// Do something different on the first iteration
}
else {
// Do something
}
i ++;
}
答案 1 :(得分:1)
据我所知,没有天生的方法这样做,而且无法知道哪个是第一个项目,属性的顺序是任意的。如果有一些东西你只想做一次,那么,这非常简单,你只需要一个手动迭代器,但我不确定这是不是你要求的。
a = {some: 1, thing: 2};
var first = true;
for (obj in a) {
if (first) {
first = false;
// Do something different on the first iteration
}
else {
// Do something
}
}