JavaScript 对象属性有时可能包含未定义或空值。这可能会导致处理数据时出现困难,并使保持一致性和准确性变得困难。删除这些空属性有利于优化代码和提高数据完整性。
要删除 JavaScript 对象中所有未定义或 null 的属性,您可以使用以下方法:
ES10/ES2019 示例:
let o = Object.fromEntries(Object.entries(obj).filter(([_, v]) => v != null));
ES6/ES2015示例:
let o = Object.keys(obj) .filter((k) => obj[k] != null) .reduce((a, k) => ({ ...a, [k]: obj[k] }), {});
ES10/ES2019示例:
function removeEmpty(obj) { const newObj = {}; Object.entries(obj).forEach(([k, v]) => { if (v === Object(v)) { newObj[k] = removeEmpty(v); } else if (v != null) { newObj[k] = obj[k]; } }); return newObj; }
ES10/ES2019 示例:
function removeEmpty(obj) { return Object.fromEntries( Object.entries(obj) .filter(([_, v]) => v != null) .map(([k, v]) => [k, v === Object(v) ? removeEmpty(v) : v]) ); }
以上是如何从 JavaScript 对象中删除 Null 和未定义的属性?的详细内容。更多信息请关注PHP中文网其他相关文章!