2017-02-21 3 views
0

私はネストされた非構造化を行い、エイリアス(別の変数名に名前を変更、たとえばaliasD)とプロパティにデフォルト値を割り当てたい特定の使用例があります。例えば。ES6の非構造化を使用してデフォルト値とエイリアスを追加する方法は?

const a = { b: { c: [{ d: 'value' }] } }; 

と私はdが、エイリアスaliasDとデフォルト値defaultValとを必要とする非構造ながら。だから私は以下しようとしたが、私は私が

const a = { b: { c: [{ d: 'value' }] } }; 
 
const { b: { c: [first: { d: aliasD = defaultVal }] } } = a; 
 

 
console.log(aliasD);

をしないのですかわからないです。しかし、これはここでの問題は、アレイ、正しい構文を構造化代入のためである

+0

でそれを試してみることができますか?それは私には分かりません。 – jfriend00

+0

「最初に」そこにいるのはなぜですか? – Li357

+0

@ jfriend00質問の最初の行では、エイリアスとデフォルト値を使用して構造を解除したいとはっきりしませんか?他に何をお探しですか? –

答えて

1

を動作しません。取得配列の最初の値は次のようになります。あなたの例にそれを適用する

[varName] = yourArray 

const { b: { c: [{ d: aliasD = 'test' }] } } = a; 

あなたはあなたが始める何を、あなたがで終わるしたいかを示すことができBabel REPL

+0

私はデフォルトでは余分な引用符を追加したと思いますが、あなたの答えを見ると、配列の非構造化には意味があります。 –

+0

@AdityaSingh実際にあなたのコードを誤読しました。唯一の問題はアレイの破壊でした。私は私の答えを編集します – Lucas

関連する問題