- 객체 초기화
let name="noona"
let age = 17
let cute = true
let person = {name, age, cute}
// let poerson = {name:name, age:age, cute:cute}와 같다
- Destructuring
let person = {
name:"noona",
age:17,
cute:true
}
let {name, age, cute} = person
// let name = person.name, let age = person.age, let cute = person.cute 와 같다
let {name 부분을 name: yourname 으로 적으면 name의 변수명이 yourname으로 된다.
- Rest destructuring
let person = {
name:"noona",
age:17,
cute:true
}
let {name, ...rest} = person
console.log(rest) // {age:17, cute:true}
let array = [1,2,3]
let [a,...rest] = array
console.log(rest) // [2,3]
- Spread
let a = [1,2]
let b = [3,4]
let c = [5,6]
let result = [...a,...b,...c] // [1,2,3,4,5,6]
- Template Literal
let name ="nnona"
console.log(`제 이름은 ${name}입니다`)
- 화살표 함수
function foo() {}
let foo = () => {}
// 화살표 함수에서는 this 사용 불가 (object안에서 함수 정의시)
// 프로토타입 함수에서도 사용 불가라는데 경험 필요
// function은 시작하면서 메모리 선언되지만 화살표는 그렇지 않다.
// 그래서 순차적으로 쓸때 좋다 했었군..
- forEach : 반환값이 없다, 단순 for문과 같이 작동한다.
- map : 반환값을 배열에 담아 반환한다.
- filter : 조건에 충족하는 (true) 아이템만 배열에 담아 반환한다.
- some : 조건에 충족하는 아이템이 하나라도 있다면 true반환, 아니면 false.
- every : 모든 배열에 아이템이 조건을 충족하면 true반환, 아니면 false.
- find : 조건에 충족하는 아이템 하나만 반환(여러개라면 첫번째것만 반환)
- findIndex : 조건에 충족하는 아이템의 인덱스값 반환 (여러개라면 첫번째아이템의 인덱스번호만 반환)
- 추가
... 방식은 얕은 복사이므로 객체의 경우 완벽히 복사가 안되는 경우 발생
=> 깊은 복사 필요
=> const 상수1 = JSON.stringify(객체) 로 깊은 복사 = 주소값이 아닌 문자로 복사
=> const 상수2 = JSON.parse(상수1) 로 파싱
'코딩 > JavaScript' 카테고리의 다른 글
localStorage (0) | 2024.02.26 |
---|---|
6자리 랜덤 인증번호 생성 (0) | 2024.02.24 |
코알누 - News (0) | 2024.02.22 |
코알누 - API 호출 (0) | 2024.02.19 |
코알누 JS (0) | 2024.02.05 |