2017-02-21 2 views
0

중첩 된 구조화를 수행하고 별칭 (다른 변수 이름으로 바꾸십시오, 예 : aliasD)과 속성에 대한 기본값을 할당하려는 구체적인 사용 사례가 있습니다. 예 :ES6 구조화를 사용하여 기본값과 별칭을 추가하는 방법은 무엇입니까?

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

하고 난 단지 d하지만 별칭 aliasD 및 기본값 defaultVal으로 필요 destructuring있다. 그래서 나는 다음 시도,하지만 난

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

 
console.log(aliasD);
를 놓친 거지 확실하지 오전하지만이

+0

당신이 시작하고 당신이 결국 무엇을 원하는 당신이 보여줄 수 있습니까? 그건 나에게 분명하지 않다. – jfriend00

+0

거기에 '첫 번째'가있는 이유는 무엇입니까? – Li357

+0

@ jfriend00 질문의 첫 번째 줄에서 별칭 및 기본값을 사용하여 구조를 해제하겠다고 분명히 알지 못합니까? 다른 무엇을 찾고 있는지 확실하지 않습니까? –

답변

1

여기서 문제는 배열, 올바른 구문을 destructuring위한 작동하지 않습니다 배열의 첫 번째 값이 될 것이다 얻을 :

[varName] = yourArray 

귀하의 예제에 그 적용 :

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

당신은 그것을 시도 할 수 Babel REPL

+0

기본값에 대한 추가 따옴표를 추가했지만 답을 보면, 배열 소멸에 의미가 있습니다. –

+0

@AdityaSingh 실제로 코드를 잘못 읽었습니다. 유일한 문제는 배열 소멸이었다. 내 대답을 수정하겠습니다. – Lucas

관련 문제