返回数组中元素的索引范围

时间:2019-10-13 05:46:49

标签: javascript arrays node.js

如何在不使用For Loop,ForEach语句等的情况下像这样返回数组中的一系列元素。

var array = ["1", "2", "3"]
console.log(array[0-3]);
//result
//1
//2
//3

3 个答案:

答案 0 :(得分:0)

您可以使用slice

var array = ["1", "2", "3"]

let indexRange = (arr, start, end) => {
  return arr.slice(start, end)
}
console.log(indexRange(array, 0, 3));

如果范围是字符串,则可以使用split和slice

var array = ["1", "2", "3"]

let indexRange = (arr, range) => {
  let [start,end] = range.split('-').map(Number)
  return arr.slice(start, end)
}
console.log(indexRange(array, "0-3"));

答案 1 :(得分:0)

使用slice()方法。 slice()方法将数组中选定的元素作为新的数组对象返回。

语法:

array.slice(start, end)

var array = ["1", "2", "3"]
console.log(array.slice(0,3));
//result
//1
//2
//3

答案 2 :(得分:0)

您可以创建一个函数,然后将范围作为字符串传递。在函数体内,用定界符-划分范围。然后连接数组的元素并创建一个字符串。使用substr获取范围之间的元素。这将创建一个新字符串,并在再次返回时将其拆分以创建一个数组

var array = ["1", "2", "3", "4", "5"]

function getElemInRange(range) {
  let getRange = range.split('-');
  return array.join('')
    .substr(parseInt(getRange[0], 10), parseInt(getRange[1], 10))
    .split('');
}

console.log(getElemInRange('0-3'));