ES6 고정값 및 확장 구문
12449 단어 매일 1시 전단
할당 해제
객체/배열에서 속성/값을 추출하여 다른 변수에 할당하는 구문: 원래 변수에서 추출할 변수 = 원래 변수
그룹 해체
var [ one, two, three ] = [1, 2, 3]
console.log(one, two, three) // 1 2 3
대상 해체
const c1 = {
name: 'Tom',
gender: ' ',
age: 20
}
var {name, gender, age} = c1
console.log(name, gender, age) // Tom 20
네스트된 객체 배열 구성
const c2 = {
name: 'Tom',
course: [
{
courseName: 'math',
score: 90
},
{
courseName: 'English',
score: 80
}
]
}
var {
name: name, // :
course: [
{ score: mathScore },
{ score: EngScore }
]
} = c2
console.log(name, mathScore, EngScore) //Tom 90 80
응용 프로그램
1. 변수 교환
var x = 1
var y = 2
var [x, y] = [y, x]
console.log(x, y) // 2 1
2. 지정된 값 가져오기
var [a, b] = [1, 2, 3, 4]
console.log(a, b) // 1 2
var [name, gender] = ['Tom', ' ', 20]
console.log(name, gender) // Tom
지정된 외의 값 가져오기 - 나머지 모드
var [a, ...b] = [1, 2, 3, 4]
console.log(b) // [ 2, 3, 4 ]
전개 구문
1. 함수 호출
function fun1(x, y) { console.log(x, y) }
var arr1 = [1, 2]
fun1(...arr1) // 1 2
2. 구성, 복사, 연결 배열
var arr2 = [3, 4]
var newArr1 = [3, ...arr2] //
var newArr2 = [...arr2] //
var newArr3 = [...arr1, ...arr2] //
console.log(newArr1) // [ 3, 3, 4 ]
console.log(newArr2) // [ 3, 4 ]
console.log(newArr3) // [ 1, 2, 3, 4 ]
3. 객체 복사, 병합
var obj1 = { name: 'Tom', gender: ' '}
var obj2 = {age: 20}
var obj3 = {...obj1}
var obj4 = {...obj1, ...obj2}
console.log(obj3) // { name: 'Tom', gender: ' ' }
console.log(obj4) // { name: 'Tom', gender: ' ', age: 20 }