我有下面的数组。

var arr = [1,0,2];

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

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


当前回答

只要arr.splice(-1)就可以了。

其他回答

以身作则:

let array_1 = [1,2,3,4];
let array_2 = [1,2,3,4];
let array_3 = [1,2,3,4];
let array_4 = [1,2,3,4];

array_1.splice(-1,1)  // returned --> [4]      array_1 = [1,2,3]
array_2.slice(0,-1);  // returned --> [1,2,3]  array_2 = [1,2,3,4]
array_3.pop();        // returned --> 4        array_3 = [1,2,3]
array_4.shift();      // returned --> 1        array_4 = [2,3,4]
var stack = [1,2,3,4,5,6];

stack.reverse().shift();

stack.push(0);

输出为:Array[0,1,2,3,4,5]。 这将允许您在插入新值时保持相同数量的数组元素。

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

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

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

// Setup
var myArray = [["John", 23], ["cat", 2]];

// Only change code below this line
var removedFromMyArray;
removedFromMyArray = myArray.pop()

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

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

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