如何从JavaScript对象中删除一个键?

假设我们有一个这样的格式的对象:

var thisIsObject= { 'Cow' : 'Moo', 'Cat' : 'Meow', 'Dog' : 'Bark' }; 

我想做一个按键删除的函数:

 removeFromObjectByKey('Cow'); 

delete操作符允许您从对象中删除属性。

下面的例子都做同样的事情。

 // Example 1 var key = "Cow"; delete thisIsObject[key]; // Example 2 delete thisIsObject["Cow"]; // Example 3 delete thisIsObject.Cow; 

如果您有兴趣,请阅读理解删除以获得深入的解释。

如果您使用的是Underscore.js或Lodash,则会有一个“省略”function。
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的另一个select

 thisIsObject.cow = undefined; thisIsObject = JSON.parse(JSON.stringify(thisIsObject )); 

如果您使用的是JavaScript shell,那么就像下面这样简单:

 delete object.keyname;