var arr = [a, b, c];
在上面的数组中, 索引0包含" a", 索引1包含" b", 索引2包含" c"。
console.log(arr[0]) // will print > "a"
console.log(arr[1]) // will print > "b"
console.log(arr[2]) // will print > "b"
有没有办法,如果我想要console.log(arr[3])
,那么它应该再次打印"a"
,console.log(arr[4])
将是"b"
,依此类推。如果我们想要一个像这样console.log(arr[42])
的42的索引,那么它应该按照相同的模式打印这三个字符串值中的任何一个。
答案 0 :(得分:3)
只需与%
arr[value % arr.length]
一起使用。
var arr = ['a', 'b', 'c'];
function finding(val){
return arr[val % arr.length];
}
console.log(finding(0))
console.log(finding(1))
console.log(finding(2))
console.log(finding(3))
console.log(finding(4))
console.log(finding(5))
console.log(finding(6))
console.log(finding(42))

答案 1 :(得分:2)
我们可以定义我们的自定义函数,它给出了适当的索引
function getIndex(num){
return num%3;/* modulo operator*/
}
var arr=["a","b","c"];
console.log(arr[getIndex(0)]);
console.log(arr[getIndex(1)]);
console.log(arr[getIndex(2)]);
console.log(arr[getIndex(3)]);
console.log(arr[getIndex(4)]);
console.log(arr[getIndex(5)]);
console.log(arr[getIndex(41)]);

答案 2 :(得分:1)
我们无法准确了解您的需求。但是我们可以通过这个获得你想要的东西
var arr = ["a","b","c"];
var printToThisIteration = function(n){
var length = arr.length;
for(i=0;i<n;++i)
{
console.log(arr[i%length])
}
}
答案 3 :(得分:1)
使用%
可以让它重复多次。
var arr = ['a','b','c'];
let repetitions = 5;
for(var i = 0; i < repetitions; i++){
console.log(arr[i%3]);
}
&#13;