자바 스크립트의 구조 분해 할당

7216 단어 javascriptbeginners
구조 분해 할당이란 무엇입니까?

😎 unpack values from arrays, or properties from objects



💎 기본형




const user = {
  name: 'kaziu',
  age: 87
}

let { name } = user
console.log(name) // "kaziu"


▼ 이름의 속성을 변경하면 어떻게 되나요?

const user = {
  name: 'kaziu',
  age: 87
}

let { name } = user

name = 'pikachu' // ⭐⭐ add it
console.log(user) // ❓❓❓❓❓❓❓❓❓❓


답은 user.name 입니다 kaziu . 변경name이 원래 개체에 영향을 미치지 않음

💎 설명



1.



개체를 할당하면 변수 이름user이 메모리 어딘가에 할당하고 이를 참조합니다object.

const user = {}




2.



then name 속성에 참조가 있습니다.

const user = {
  name: 'kaziu'
}




삼.



이제 소멸 할당을 사용하십시오.

const user = {
  name: 'kaziu',
  age: 87
}

let { name } = user // ⭐⭐ Now add it and then ...?




4.


kaziupikachu로 변경하면 원래 개체에 영향을 미치지 않습니다.

const user = {
  name: 'kaziu',
  age: 87
}

let { name } = user
name = 'pikachu'

console.log(user.name) // 'kaziu'




💎 깊은 계층 개체는 어떻습니까?




const user = {
  name: {
    first: 'kaziu',
    last: 'suzuki'
  }
}

let { name } = user
console.log(name) // { first: 'kaziu', last: 'suzuki' }

name.first = 'pikachu'
console.log(user)
// { name: { first: 'pikachu', last: 'suzuki' } }
// ⭐⭐ original object changes from `kaziu` to `pikachu` !!!


두 번째 계층 구조이기 때문에 참조는 원래 개체와 동일합니다.
덧붙여서 shallow copy를 부른다

좋은 웹페이지 즐겨찾기