user = {
firstName: 'Nick',
age: 35
location: {
country: 'USA',
city: 'NYC',
},
}
を知らなくても、オブジェクトの子プロパティのデフォルト値を設定し、私は多くの場合、このシナリオで実行しています:置き及び小道具名
私は、デフォルト値のいくつかの小道具を設定する必要が突然変異/減速を持っています。明示的に設定を解除/リセットする必要はありません。 (たとえば、ユーザーログアウト:user.firstName = ''
など)。
オブジェクトの構造を知らなくても、これらの値をそれぞれ削除して(nullまたは空の文字列に設定する)最も効率的で安全な方法は何ですか?どのようなロダッシュや他の図書館にもその方法がありますか?
私は基本的にfor...in
for (prop in user) {
console.log(prop);
}
またはObject.keys
、または以前のものを置き換えることができ、デフォルトのオブジェクトを維持するを使用して再帰的な解決策を考えています。
望ましい結果
user = {
firstName: '',
age: null,
location: {
country: '',
city: '',
},
}
何を達成しようとしていますか? –
'for..in'がプロトタイプチェーンの列挙可能なプロパティを繰り返し処理するので、私は' Object.keys'を使用します。あなたはその動作を望むとは思わないでしょう。 – Taurus