【发布时间】:2015-03-14 02:45:47
【问题描述】:
所以我很失望地发现 JavaScript 的 for ( var in array/object) 不等同于 python 的 for var in list:。
在 JavaScript 中,您正在迭代索引本身,例如
0,
1,
2,
...
与 Python 一样,您正在迭代索引所指向的值,例如
"string var at index 0",
46,
"string var at index 2",
["array","of","values"],
...
是否有等效于 Python 循环机制的标准 JavaScript?
免责声明:
我知道 for (var in object) 构造旨在用于遍历字典中的键,而不是通常遍历数组的索引。我在问一个与我不关心顺序(或非常关心速度)并且不想使用 while 循环的用例有关的特定问题。
【问题讨论】:
-
有
Array.prototype.forEach。无论如何,您不应该使用for ... in来遍历 JavaScript 中的数组。 -
为什么?慢了多少?我不在乎订单。
-
未来,可能是
for..ofloops。 -
它是单一的并且有可能引入奇怪的错误。 JavaScript 是一种不同于 Python 的编程语言。
标签: javascript python loops for-loop iterator