How do I remove a key from a JavaScript object? [duplicate]

Let's say we have an object with this format:

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

I wanted to do a function that removes by key:

removeFromObjectByKey('Cow'); 
3

3 Answers

The delete operator allows you to remove a property from an object.

The following examples all do the same thing.

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

If you're interested, read Understanding Delete for an in-depth explanation.

9

If you are using Underscore.js or Lodash, there is a function 'omit' that will do it.

var thisIsObject= { 'Cow' : 'Moo', 'Cat' : 'Meow', 'Dog' : 'Bark' }; _.omit(thisIsObject,'Cow'); //It will return a new object => {'Cat' : 'Meow', 'Dog' : 'Bark'} //result 

If you want to modify the current object, assign the returning object to the current object.

thisIsObject = _.omit(thisIsObject,'Cow'); 

With pure JavaScript, use:

delete thisIsObject['Cow']; 

Another option with pure JavaScript.

thisIsObject = Object.keys(thisIsObject).filter(key => key !== 'cow').reduce((obj, key) => { obj[key] = thisIsObject[key]; return obj; }, {} ); 
13

It's as easy as:

delete object.keyname; 

or

delete object["keyname"]; 
2

You Might Also Like