从数组中删除最后一个元素,而不使用pop()

时间:2019-04-17 20:04:22

标签: javascript arrays

我是JavaScript新手。我想从数组中删除最后一个元素,而不使用pop方法。我尝试使用length属性,但是在控制台中变得未定义。请帮忙!

function lastElement(array) {

   return array[array.length-1];

}

lastElement([3,4,5,6]);

2 个答案:

答案 0 :(得分:3)

使用slice()

function lastElement(array) {
   return array.slice(0,array.length-1);
}

lastElement(array);

答案 1 :(得分:2)

您需要先获取元素,然后再减小数组长度。

顺便说一句,移交的参数不是数组。您需要一个数组来执行此任务,因为如果仅接受参数,则长度更改毫无意义。

function lastElement(array) {
    var temp = array[array.length - 1];
    array.length = Math.max(0, array.length - 1); // prevent assigning negative values
    return temp;
}

var array = [3, 4, 5, 6];

console.log(lastElement(array));
console.log(lastElement(array));
console.log(lastElement(array));
console.log(lastElement(array));
console.log(lastElement(array));
console.log(array);