변수 정의
while
for
forin
forof
별찍기 하나 넣어주기
함수 선언식과 표현식이 존재
함수 표현식을 주로 사용한다.
특이한 점
기본 인자(default arguments)
매개변수와 인자의 불일치 허용
전개 구문 = spread stytax - 얕은복사임
화살표 함수 arrow function - 즉시실행함수
Method | 설명 |
---|---|
reverse | 원본 배열의 요소들의 순서를 반대로 정렬 |
push & pop | 배열의 가장 뒤에 요소를 추가 또는 제거 |
unshift & shift | 배열의 가장 앞에 요소를 추가 또는 제거 |
includes | 배열에 특정 값이 존재하는지 판별 후 참/거짓 반환 |
indexOf | 배열에 특정 값이 존재하는지 판별 후 인덱스 반환 요소가 없을 경우 -1 반환 |
join | 배열의 모든 요소를 구분자를 이용하여 연결 구분자 생략 시 쉼표가 default이다. |
Method | 설명 |
---|---|
forEach | 배열의 각 요소에 대해 콜백 함수를 한번씩 생성한다. 반환값이 없다. |
map | 콜백 함수의 반환 값을 요소로 하는 새로운 배열을 반환한다. |
filter | 콜백 함수의 반환 값이 참인 요소들만 모아서 새로운 배열을 반환한다. |
reduce | 콜백 함수의 반환 값들을 하나의 값(acc)에 누적 후 반환한다. |
find | 콜백 함수의 반환 값이 참이면 해당 요소를 반환한다. |
some | 배열의 요소 중 하나라도 판별 함수를 통과하면 참을 반환한다. |
every | 배열의 모든 요소가 판별 함수를 통과하면 참을 반환한다. |
① forEach
const colors = ['red', 'blue', 'green']
colors.forEach((element) => {
console.log(element)
})
// red
// blue
// green
// enumulate로도 사용 가능
colors.forEach((index, element) => {
console.log(index, element)
})
// red 0
// blue 1
// green 2
② map
const numbers = [1, 2, 3]
const doubleNumbers = numbers.map((element) => {
return element * 2
})
console.log(doubleNumbers)
③ filter
const products = [
{ name : 'cucumber', type: "vegetable"},
{ name : 'banana', type: "fruit"},
{ name : 'carrot', type: "vegetable"},
{ name : 'apple', type: "fruit"},
]
const fruitFilter = function (product) {
return product.type == 'fruit'
}
const fruit = products.filter(fruitFilter)
console.log(fruit)
④ reduce
const tests = [90, 90, 80, 77]
// const sum = tests.reduce(function (total, x) {
// return total + x
// })
const sum = tests.reduce((acc, element) => {
return acc + element
})
console.log(sum)
const avg = tests.reduce((acc, element) => {
return acc + element
}) / tests.length
console.log(avg)
⑤ find
const avengers = [
{ name: 'Tony Stark', age: 45},
{ name: 'Steve Rogers', age: 32},
{ name: 'Thor', age: 40}
]
const avenger = avengers.find((element) => {
return element.name === 'Tony Stark'
})
console.log(avenger)
⑥ some
const arr = [1, 2, 3, 4, 5]
const result = arr.some((element) => {
return element % 2 === 0
})
console.log(result)
⑦ every
const arr = [1, 2, 3, 4, 5]
const result = arr.every((element) => {
return element % 2 === 0
})
console.log(result)
① 속성명 축약
② 메서드명 축약
③ 계산된 속성명 사용하기
④ 구조 분해 할당(destructing assignment)
⑤ 객체 전개 구문(spread operator)