javascript - 即使索引越界如何从数组中获取项目

标签 javascript jquery arrays

我有一个包含 8 个位置的数组:

var myArray = [];
myArray[0] = "text1";
myArray[1] = "text2";
myArray[2] = "text3";
myArray[3] = "text4";
myArray[4] = "text5";
myArray[5] = "text6";
myArray[6] = "text7";
myArray[7] = "text8";

我想要发生的是,如果用户输入大于 8 的数字来从数组中获取文本之一,那么它会在 [7] 之后再次从数组的开头开始。因此,如果用户输入10,则用户将获得位置[1]的值,即“text2”。我该怎么做呢?

最佳答案

您可以通过使用 "remainder" modulo operator 来完成此操作它处理这些类型的“包装”场景:

function getArrayValueWithWrapping(array, index){
     return array[index % array.length];
}

关于javascript - 即使索引越界如何从数组中获取项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41707926/

相关文章:

javascript - 自定义 React 组件样式被 Material-UI 样式覆盖

javascript - 如何使用外部 JavaScript 代码访问和更新 Bokeh 图或小部件?

javascript - Backbone.js 无法与 Require.js bundle 一起使用

javascript - 如何从嵌套数组中过滤对象

c++ - BigInt 计算器吐出稍微错误的结果

arrays - 将 slice 传递给用于 go 例程的函数

javascript - 如何使 JavaScript 创建的列表项可点击?

javascript - 是否可以通过ExternalInterface调用允许FileReference.save()?

javascript - 是否可以根据 JS 变量包含 CSS 文件?

javascript - 在数据表中设置默认排序列