首页 文章

如何从JavaScript对象中删除密钥? [重复]

提问于
浏览
957

这个问题在这里已有答案:

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

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

我想做一个按键删除的功能:

removeFromObjectByKey('Cow');

3 回答

  • 119

    如果您使用的是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'];
    

    Another option 使用纯JavaScript .

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

    如果您使用的是JavaScript shell,它就像以下一样简单:

    delete object.keyname;
    
  • 54

    delete运算符允许您从对象中删除属性 .

    以下示例都做同样的事情 .

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

    如果您有兴趣,请阅读Understanding Delete以获得深入的解释 .

相关问题