자바 스크립트의 구조 분해 할당
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.
kaziu
를 pikachu
로 변경하면 원래 개체에 영향을 미치지 않습니다.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
를 부른다Reference
이 문제에 관하여(자바 스크립트의 구조 분해 할당), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kaziusan/destructuring-assignment-in-javascript-2a4h텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)