我试图弄清楚如何仅遍历javascript列表中的特定部分。
在Python中,我这样做是这样的:
board = range(101)
answer = 92
match = []
low = answer - 2
high = answer + 2
for i in board[low:high + 1]:
match.append(i)
我的问题是如何在JavaScript中编写类似的for循环?
答案 0 :(得分:0)
您可以遍历列表中所需的slice
const board = new Array(101).fill().map((_, i) => i) //this way you can create range of [0..101]
...
board.slice(low, high+1).forEach(i=>{
match.append(i)
})
答案 1 :(得分:0)
如果您的目标是归档match
的结果,
for i in board[low:high + 1]:
match.append(i)
match = board.slice(low, high + 1);
但是,如果您的目标是产生相同的努力(进行循环),则可以执行以下任何一种技术:
您可以像这样进行loop:
for (let index = low; index < (high + 1); index++) {
match.push(board[index])
}
另一种方法是切片数组:(array.prototype.slice)
board = board.slice(low, high +1)
for (let index = 0; index < board.length; index++) {
match.push(board[index])
}
也许使用for...in:
for (let item in board.slice(low, high + 1)) {
match.push(item)
}
或者甚至使用slice和forEach:array.prototype.forEach
board.slice(low, high + 1).forEach(function(item){
match.push(item)
});
也许还使用arrow function:
board.slice(low, high +1).forEach((i) = {
match.push(i)
});