Удалить атрибут JSON

Если у меня есть объект JSON, скажите:

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

Можно удалить 'key1', чтобы он стал:

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

Ответ 1

Простой:

delete myObj.test.key1;

Ответ 2

Выбранный ответ будет работать до тех пор, пока вы знаете сам ключ, который вы хотите удалить, но если он должен быть действительно динамическим, вам нужно будет использовать нотацию [] вместо точечной нотации.

Например:

var keyToDelete = "key1";
var myObj: {"test": {"key1": "value", "key2": "value"}}

delete myObj.test.keyToDelete //would not work.

вместо этого вам нужно будет использовать:

delete myObj.test[keyToDelete];

Замените нотную обозначение точки на [] для тех значений, которые вы хотите оценить до их удаления.