如果索引大于数组长度,则应重新回到开头。

3
function getAnyItem(arr, position) {
  if (position > arr.length) {
   return position = arr[0] ;
  }
  let index = arr[position];
  return index;

 }

我在寻找一种不使用循环的方法来遍历数组,但是一直无法解决。以上是我目前写的代码,但是返回的结果都是undefined。由于我刚开始学习编程,所以希望能得到帮助。

getItem(['a', 'b', 'c'], 10) 应该返回 'b'。


return arr[position % arr.length] - undefined
1个回答

6

您可以使用数组的长度和 求余运算符 %

function getItem(arr, position) {
   return arr[position % arr.length];
}

console.log(getItem(['a','b','c'], 10)); // 'b'


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接