728x90

- 객체 초기화

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) 로 파싱

728x90

'코딩 > 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

+ Recent posts