【发布时间】:2021-04-08 13:28:06
【问题描述】:
我一直在努力寻找与 Python 的“for x in y”等效的 Javascript。例如,我想将偶数推入一个空数组,但我不知道如何编写代码来执行此操作。我一直在这样做:
var numbers = [ 1, 2, 3, 4, 5]
var even = []
for(var x = 0; x < numbers.length; x++){
if(x % 2 == 0){
even.push(x)
}
}
如果数字是字符串,字符串也一样:
var numbers = [ "one", "two", "three"]
var even = []
for(var x = 0; x < numbers.length; x++){
if(x == "two"){
even.push(x)
}
}
我注意到每次我输入它时,它只显示 x 作为数组的索引,但我想访问元素。
【问题讨论】:
-
numbers[x]获取属于索引的项目x -
for ... of是 Python 的for .. in的直接惯用 JS 等价物。但是,对于这个简单的用例,我更喜欢在数组上简单地使用filter方法 - 没有任何循环。 -
for(let x of [1,2,3]) { console.log(x) }有什么问题 -
@RandyCasburn
for/in应该只用于对象,而不是数组,因为它迭代所有自己的属性,而不仅仅是索引的。 -
那是一个“准备、开火、瞄准”的例子:-)
标签: javascript python arraylist