目次
やりたいこと
const sampleObject = { key1: 1, key2: undefined, key3: 3, key4: 4, key5: undefined,
};
↑↑のようなオブジェクトがあった場合に、undefinedのプロパティを削除して↓↓のようなオブジェクトにしたい
const sampleObject = { key1: 1, key3: 3, key4: 4,
};
解決策
こんな感じでできました!
const newSampleObject = Object.fromEntries( Object.entries(sampleObject).filter(([, value]) => { return value !== undefined; })
);
console.log(newSampleObject);
// {"key1": 1, "key3": 3, "key4": 4}
解説
Object.entries
でオブジェクトを配列に変換しています。
const sampleObject = { key1: 1, key2: undefined, key3: 3, key4: 4, key5: undefined,
};
console.log(Object.entries(sampleObject));
// [["key1", 1], ["key2", undefined], ["key3", 3], ["key4", 4], ["key5", undefined]]
オブジェクトを配列に変換後、filter
で値がundefinedのものを除きます。
const sampleObject = { key1: 1, key2: undefined, key3: 3, key4: 4, key5: undefined,
};
console.log(Object.entries(sampleObject).filter(([, value]) => { return value !== undefined;
}));
// [["key1", 1], ["key3", 3], ["key4", 4]]
最後に、Object.fromEntries
で配列をオブジェクトに変換して終了です!
const sampleObject = { key1: 1, key2: undefined, key3: 3, key4: 4, key5: undefined,
};
console.log(Object.fromEntries( Object.entries(sampleObject).filter(([, value]) => { return value !== undefined; })
));
// {"key1": 1, "key3": 3, "key4": 4}
IT技術ブログ
↓↓「にほんブログ村」のランキングに参加しています。少しでも面白い、参考になったとか思われたらポチッとしていただけると嬉しいです!