我该如何切片一个数组,以便剩下从索引1到倒数第二个索引的所有元素?

时间:2019-06-07 15:33:11

标签: javascript arrays slice

看看下面的功能

let myFunc = (x,y)=>{
let myArray = [];
for(let i = x; i <= y; i++) {
myArray.push(i);
}
return myArray;
}

假设xy是数字,并且x始终小于y,则上述函数将返回{{1}之间的所有数字组成的数组}和x。如何使用数组切片方法仅返回从索引1到数组倒数第二个索引的数字?

5 个答案:

答案 0 :(得分:2)

这是代码,

var s = [1,2,3,4,5,6];
var p = s.slice(1,s.length-1);
console.log(p);

答案 1 :(得分:0)

如果您不想在开头包含x,在结尾不包含y,则不要在循环中包含它们:

let myFunc = (x, y) => {
  let myArray = [];
  for (let i = x + 1; i < y; i++) {
    myArray.push(i);
  }
  return myArray;
}

console.log(myFunc(5, 25))

答案 2 :(得分:0)

您可以为end的{​​{1}}参数指定一个负数,该数字从头算起。因此,您可以使用array.prototype.slice()来表示倒数第二个。

-1

答案 3 :(得分:0)

您可以结合使用popshift;

  

pop()删除数组的最后一个元素。

     

shift()删除数组的第一个元素。

var s = [1,2,3,4,5,6];
s.pop();
s.shift();
console.log(s);

答案 4 :(得分:-1)

myArray = ['a','b','c','d','e'];
myArray = myArray.slice(0,myArray.length-1);
console.log(myArray)

JavaScript Array Splicing