Как удалить часть объекта в javascript
Это мой код:
var data = [];
$("#btn").click(function(){
total++;
data.push({
id : total,
"cell": [
"val1",
"val2",
"val3",
]
});
});
Каждый раз, когда пользователь нажимает кнопку btn
, я добавляю некоторые значения в объект данных. Теперь мой вопрос заключается в том, как я могу удалить часть с id = X
Ответы
Ответ 1
Вы можете использовать .splice() в позиции X
var data = [{id : total, "cell" : ["val1", "val2", "val3"]}[, ...repeat];
var X = 0; // position to remove
data.splice(X,1);
расширение:
for (var i=data.length-1; 0 < i; i--) {
if (data[i].id == X) {
data.splice(X,1);
break;
}
}
Ответ 2
Просто используйте x = {id1: "some value"}
delete x.id1
Что об этом
Ответ 3
Вот альтернативная идея. Вместо этого используйте id как ключ в объекте:
var data = {};
$("#btn").click(function(){
total++;
data[total] = {
cell: [
"val1",
"val2",
"val3"
]
};
});
Затем, чтобы удалить объект, который имеет этот конкретный идентификатор, вы можете сделать:
delete data[id];
или
data[id] = null;
чтобы просто удалить его.
Таким образом вы удаляете сложность из наличия там массива.
Ответ 4
const { whatIDontWant, ...theRest } = everything;
return {theRest};
Пусть LHS равно RHS, whatIDontWant исключен из theRest из-за уникальности свойств внутри объекта. Поэтому theRest является объектом без нежелательного свойства.