我有下面的数组。

var arr = [1,0,2];

我想删除最后一个元素,即2。

我使用了arr。slice(-1);但它并没有删除值。


当前回答

你可以简单地使用arr.pop()

这将删除数组的最后一个条目。

var arr = [1,0,2]; 
var popped = arr.pop();//Now arr = [1,0] & popped = 2

其他回答

art .slice(-1)将返回数组最后一个元素的副本,但原始数组不作修改。

要从数组中移除最后n个元素,使用arr.splice(-n)(注意“splice”中的“p”)。返回值将是一个包含已删除元素的新数组。

更简单的是,对于n == 1,使用val = arr.pop()

你需要这样做,因为slice不会改变原始数组。

arr = arr.slice(0, -1);

如果你想改变原始数组,你可以使用splice:

arr.splice(-1, 1);

或者流行:

arr.pop();
var a = [1,2,3,4,5,6]; 
console.log(a.reverse().slice(1).reverse());
//Array(5) [ 1, 2, 3, 4, 5 ]

使用splice(startPosition, deleteCount)

array.splice(-1)

Var数组= ['abc','def','ghi','123']; Var remove = array.splice(-1);/ /最后一项 Console.log ('array:', array); Console.log ('removed:', removed);

使用JavaScript约定的Array.prototype.pop()。

let fruit = ['apple', 'orange', 'banana', 'tomato'];
let popped = fruit.pop();

console.log(popped); // "tomato"
console.log(fruit); // ["apple", "orange", "banana"]