object shorthand assignment
let name = "lee"
let age = 20
let person = {
name,
age
}
key 와 value 변수명이 같을경우 사용가능 출력시
name의 value값과 age의 value값이 출력된다.
Destructuring
let people = {
name:"lee",
age:20
}
let {name,age} = people
// 배열에서도 가능
let array = [1,2,3,4,5,6,7,8,9,10]
let [a,b] = array
// rest
let [a,b,...rest] = array
people의 객체에 name,age 라는 키값을 분해해서 name,age 변수에 저장한다.
배열도 마찬가지로 a,b라는 변수에 array 첫번째,두번째 값을 저장한다.
array 배열에 첫번째,두번째 값만 제외후 rest 값에 저장한다.
출력해보면 1,2를 제외한 나머지 값이 rest에 잘 저장되어 있는걸 확인할수 있다.
spread
let people = {
name:"lee",
age:12
}
let people_2 = {...person}
let array = [1,2,3]
//배열 추가 복사
let array_b = [...array]
//배열에 추가 복사후 배열 값 추가
let array_b = [...array,4]
//배열 두개를 하나의 배열로 추가복사
let c = [...array,...array_b]
people 객체를 people_2 로 복사해서 서로 다른 하나의 객체를 더 생성 할수 있다. '...'
마찬가지로 배열에 복사후 추가 생성이 가능하며, 복사하면서 배열을 추가 할수도 있다.
추가로 하나의 배열에 여러개 배열을 추가 복사할수 있다.
삼항연산자
let people = null
if(people){
console.log(people.name)
}else{
console.log("people not name")
//새로운 문법 if else?
//people name 키값이 있다면 people.name 출력 없다면 people not name 출력
console.log(people?people.name:"people not name")
아래는 삼항연사자 이다. if 문 대신 사용이 가능하다..
for Each
arrays.forEach(array => {
console.log(array)
});
for문을 for Each로 요새는 이렇게도 해줍니다..