如何根据指定数组中的键删除JavaScript对象数组内的对应键
实现方案
方案1:不修改原数组(推荐)
该方式会返回全新的过滤后数组,不会改动原始的items数据,适合需要保留原始数据的场景,将待删除键转为Set可大幅提升大数量级下的查找效率:
const removeKeySet = new Set(toRemove); const filteredItems = items.map(item => { return Object.fromEntries( Object.entries(item).filter(([key]) => !removeKeySet.has(key)) ); });
方案2:直接修改原数组
如果不需要保留原始items数据,可以用这个更简洁的写法:
items.forEach(item => { toRemove.forEach(key => delete item[key]); }); // 执行完成后原items数组即为删除指定键后的结果
内容的提问来源于stack exchange,提问作者Muhammad Shahzad
相关产品推荐
相关产品推荐

