删除JSON属性

如果我有一个JSON对象说:

var myObj = {'test' : {'key1' : 'value', 'key2': 'value'}} 

我可以删除'key1',所以它变成:

 {'test' : {'key2': 'value'}} 

简单:

 delete myObj.test.key1; 

只要您知道要删除的密钥本身,选定的答案就可以工作,但如果它应该是真正dynamic的,则需要使用[]符号而不是点符号。

例如:

 var keyToDelete = "key1"; var myObj: {"test": {"key1": "value", "key2": "value"}} delete myObj.test.keyToDelete //would not work. 

相反,你需要使用:

 delete myObj.test[keyToDelete]; 

用[]符号replace点符号表示要在删除之前进行评估的那些值。