返回一个数组,其中包含传入数组的所有元素但最后一个元素

时间:2016-10-26 22:45:29

标签: javascript arrays splice

说明:

  

编写一个名为getAllElementsButLast的函数。

     

给定一个数组,getAllElementsButLast返回一个包含所有元素但最后一个元素的数组。

以下是我的代码,不会传递问题的要求。我不知道为什么这是不正确的,即使我回到了最后的所有元素。

var arr = [1, 2, 3, 4]

function getAllElementsButLast(array) {
    return arr.splice(0, arr.length - 1)
}
getAllElementsButLast(arr) // [1, 2, 3]

1 个答案:

答案 0 :(得分:0)

我认为不接受它的原因是因为splice()更改 输入数组。这不是你想要的。而是使用slice()。此方法不会更改 输入数组。

var arr = [1, 2, 3, 4]

function getAllElementsButLast(array) {
  var newArr = array.slice(0, array.length - 1);
  return newArr;
}

var r = getAllElementsButLast(arr);
console.log(r);
console.log(arr);