ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript オブジェクトから null 属性と未定義属性を効率的に削除するにはどうすればよいですか?
データ オブジェクトを扱う場合、多くの場合、定義されていない属性や null に設定されていない属性を削除する必要があります。この記事では、さまざまな JavaScript バージョンと手法を使用したこの問題の解決策を説明します。
let o = Object.fromEntries(Object.entries(obj).filter(([_, v]) => v != null));
function removeEmpty(obj) { return Object.fromEntries( Object.entries(obj) .filter(([_, v]) => v != null) .map(([k, v]) => [k, v === Object(v) ? removeEmpty(v) : v]) ); }
Object.keys(obj).forEach((k) => obj[k] == null && delete obj[k]);
let o = Object.keys(obj) .filter((k) => obj[k] != null) .reduce((a, k) => ({ ...a, [k]: obj[k] }), {});
function removeEmpty(obj) { return Object.entries(obj) .filter(([_, v]) => v != null) .reduce((acc, [k, v]) => ({ ...acc, [k]: v === Object(v) ? removeEmpty(v) : v }), {}); }
function removeEmpty(obj) { return Object.keys(obj) .filter(function (k) { return obj[k] != null; }) .reduce(function (acc, k) { acc[k] = obj[k]; return acc; }, {}); }
function removeEmpty(obj) { const newObj = {}; Object.keys(obj).forEach(function (k) { if (obj[k] && typeof obj[k] === "object") { newObj[k] = removeEmpty(obj[k]); } else if (obj[k] != null) { newObj[k] = obj[k]; } }); return newObj; }
function removeEmpty(obj) { return Object.keys(obj) .filter(function (k) { return obj[k] != null; }) .reduce(function (acc, k) { acc[k] = typeof obj[k] === "object" ? removeEmpty(obj[k]) : obj[k]; return acc; }, {}); }
以上がJavaScript オブジェクトから null 属性と未定義属性を効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。