Javascript - 数组中索引周围的范围为 5
Javascript - range of 5 around index in array
我想知道如何做以下操作。
我有一个对象数组,我正在尝试检索一个设定的数量,例如围绕给定索引的它们。
下面是一个示例。
var arr = [0,1,2,3,4,5,6,7,8,9,10];
var index = 0;
var max = 5;
If the index is 0 I want [0 - 4]
If the index is 4 I want [2 - 6]
If the index is 9 I want [6 - 10]
但是如果数组也小于最大值,我也希望它能工作。例如
var arr = [0,1,2];
var index = 0;
var max = 5;
Any index would return [0 - 2]
有什么想法吗?
你可能想试试这个
var arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
function getRange(array, index, range) {
var least = index - Math.floor(range/2);
least = (least < 0) ? 0 : least;
return array.slice(least, least+range);
}
var start = index - max / 2;
if (start < 0) start = 0;
var end = start + max;
if (end > arr.length) {
end = arr.length;
start = end - max;
if (start < 0) start = 0;
}
var result = arr.slice(start, end);
相关文章:
- 正在全局范围中查找JavaScript函数
- 如何通过数组更新角度子范围
- 如何使用ngrepeat和双向绑定获得指令的隔离范围
- HTML范围:动态设置值属性
- "实例范围”;TypeScript类的getter/setter
- jquery日期选择器年份范围默认值
- Jpgraph:如何手动设置X轴和Y轴的范围
- 在对象数组中查找多个值的d3范围
- 动态加载angularjs并生成控制器和范围
- 如何通过谷歌应用程序脚本从谷歌文档中的位置确定命名范围
- 在Materialize Calendar中设置年份范围
- 在MVVM视图模型中处理应用程序范围的元素
- setInterval游戏循环的范围问题
- AngularJS获取范围中的选定项目
- 从指定范围创建字符数组
- ES6是否引入了一种机制来生成块范围的函数语句(而不是表达式)
- Angularjs无法将单选按钮与嵌套范围内的模型绑定
- 为什么不是't这=>边界“;这个“;到周围的范围
- Javascript - 数组中索引周围的范围为 5
- 将你周围1公里范围内的照片上传至谷歌地图