我只是想弄清楚通过执行 onClick 函数删除对象的所有元素的最佳方法是什么。这个想法是处理程序应该删除所有元素。我尝试了几个选项,包括使用 delete 关键字和过滤。但是,当我单击全部清除按钮时,它不会删除任何内容。请参阅下面的代码。谢谢
这里是对象键的控制台日志:
答案 0 :(得分:0)
您可以使用 lodash omit 创建一个新对象
import omit from 'lodash/omit';
const itemConfigs = [{
mode: 1,
status: "STOPPED",
value: 10
},
{
mode: 1,
status: "COMPLETED",
value: 11
},
{
mode: 1,
status: "PENDING",
value: 13
},
{
mode: 1,
status: "STOPPED",
value: 12
}
];
const filteredStoppedItems = Object.keys(itemConfigs).filter(
(key) =>
(itemConfigs[key].status === "STOPPED" ||
itemConfigs[key].status === "COMPLETED" ||
itemConfigs[key].status === "FAILED") &&
itemConfigs[key].mode !== null
);
console.log("FILTEREDSTOPPEDITEMS", filteredStoppedItems);
console.log(omit(itemConfigs, filteredStoppedItems));
答案 1 :(得分:0)
为什么要删除所有带forEach
的元素,只给它分配一个新的空对象;
let obj = {
happy: 0.6,
neutral: 0.1,
said: 0.3,
};
console.log(obj);
obj = {};
console.log(obj);