jQuery -删除最后一个对象的关键

jQuery - delete last object by key

本文关键字:一个对象 最后 删除 jQuery      更新时间:2023-09-26

嗨,我有这个对象:

object {
 key1:[.....],
 key2:[....],
 key3:[.... ]
}

如何删除最后一个对象键(key3)?

我想自由地删除最后一个对象键,而不知道该键的任何信息。

这是es5兼容的方式:

obj = {a : 1, b : 2, c : 3};
var k = Object.keys(obj);
delete obj[k[k.length-1]];

或短:

delete obj[Object.keys(obj)[Object.keys(obj).length-1]];

您不能假设最后添加的元素将是javascript对象中列出的最后一个元素。参见这个问题:元素顺序在"for(…in…)"循环

简而言之:如果顺序对你很重要,就使用数组。

Javascript中对象中没有"last"对象键。对象键没有顺序,因此不能有第一个或最后一个。

我猜,从技术上讲,键没有任何特定的顺序,但无论如何…

var key;
for (key in obj);
delete obj[key];

遍历整个对象,然后删除最后访问的对象。

编辑说明

obj = {a : 1, b : 2, c : 3};
for (key in obj); // loops over the entire object, doing nothing *EXCEPT* 
                  // updating the `key` variable
alert(key); // "c" ... the last value of `key` was 'c'
delete obj[key];  // remove obj.c