我该如何从JavaScript对象中删除一个键?[重复]
我该如何从JavaScript对象中删除一个键?[重复]
这个问题已有答案:
假设我们有一个带有以下格式的对象:
var thisIsObject= { 'Cow' : 'Moo', 'Cat' : 'Meow', 'Dog' : 'Bark' };
我想写一个移除对象键的函数:
removeFromObjectByKey('Cow');
admin 更改状态以发布 2023年5月24日
如果您正在使用 Underscore.js 或 Lodash,则可以使用函数“omit”来执行此操作。
http://underscorejs.org/#omit
var thisIsObject= { 'Cow' : 'Moo', 'Cat' : 'Meow', 'Dog' : 'Bark' }; _.omit(thisIsObject,'Cow'); //It will return a new object => {'Cat' : 'Meow', 'Dog' : 'Bark'} //result
如果要修改当前对象,则将返回的对象分配给当前对象。
thisIsObject = _.omit(thisIsObject,'Cow');
使用纯 JavaScript,可以使用以下命令:
delete thisIsObject['Cow'];
另一个纯 JavaScript 选项。
thisIsObject = Object.keys(thisIsObject).filter(key => key !== 'cow').reduce((obj, key) => { obj[key] = thisIsObject[key]; return obj; }, {} );
delete
操作符允许你从一个对象中删除一个属性。
以下的例子都实现相同的效果。
// Example 1 var key = "Cow"; delete thisIsObject[key]; // Example 2 delete thisIsObject["Cow"]; // Example 3 delete thisIsObject.Cow;
let animals = { 'Cow': 'Moo', 'Cat': 'Meow', 'Dog': 'Bark' }; delete animals.Cow; delete animals['Dog']; console.log(animals);
如果你感兴趣,可以阅读 理解 Delete 来深入了解。