September 05, 2021
함수를 인자로 전달받거나 함수를 결과로 반환하는 함수
undefined
를 반환for
문과는 달리 break
문을 사용할 수 없음const arr = [1, 2, 3, 4, 5];
const result = arr.forEach(arrItem => {
console.log(arrItem); // 1, 2, 3, 4, 5가 차례로 출력된다.
});
console.log(result); // undefined
const arr = [1, 2, 3, 4, 5];
const result = arr.map(arrItem => {
console.log(arrItem); // 1, 2, 3, 4, 5가 차례로 출력된다.
return arrItem * 2;
});
console.log(result); // [2, 4, 6, 8, 10]
const arr = [1, 2, 3, 4, 5];
const result = arr.filter(arrItem => {
console.log(arrItem); // 1, 2, 3, 4, 5가 차례로 출력된다.
return arrItem % 2 === 0;
});
console.log(result); // [2, 4]
const arr = [1, 2, 3, 4, 5];
const result = arr.reduce((acc, cur) => {
console.log(`${acc}+${cur}`); // 1+2, 3+3, 6+4, 10+5가 차례로 출력된다.
return acc + cur;
});
console.log(result); // 15
true
, 하나도 없으면 false
반환true
를 반환하고 반복을 멈춘다.const arr = [1, 2, 3, 4, 5];
const result = arr.some(arrItem => {
console.log(arrItem); // 1, 2 까지만 출력된다.
return arrItem % 2 === 0;
});
console.log(result); // true
true
, 전부 통과 못하면 false
반환false
를 반환하고 반복을 멈춘다.const arr = [1, 2, 3, 4, 5];
const result = arr.every(arrItem => {
console.log(arrItem); // 1 까지만 출력된다.
return arrItem % 2 === 0;
});
console.log(result); // true
undefined
를 반환const arr = [1, 2, 3, 4, 5];
const result = arr.find(arrItem => {
console.log(arrItem); // 1, 2 까지만 출력된다.
return arrItem % 2 === 0;
});
console.log(result); // 2
-1
을 반환const arr = [1, 2, 3, 4, 5];
const result = arr.findIndex(arrItem => {
console.log(arrItem); // 1, 2 까지만 출력된다.
return arrItem % 2 === 0;
});
console.log(result); // 1
arr.fill(value[, start[, end]])
value
만 지정하고 start
, end
값을 지정하지 않는 경우 배열의 모든 요소가 해당 value
로 채워진다.value
, start
만 지정하고 end
값을 지정하지 않는 경우 배열의 start
인덱스부터 배열 끝 요소까지 value
로 채워진다.value
, start
, end
값을 모두 지정하는 경우 배열의 start
인덱스부터 end - 1
인덱스 요소까지 value
로 채워진다.const arr = [1, 2, 3, 4, 5];
const result = arr.fill(0);
console.log(result); // [0, 0, 0, 0, 0]
const arr = [1, 2, 3, 4, 5];
const result = arr.fill(0, 2);
console.log(result); // [1, 2, 0, 0, 0]
const arr = [1, 2, 3, 4, 5];
const result = arr.fill(0, 2, 4);
console.log(result); // [1, 2, 0, 0, 5]
const arr = [1000, 10, 3, 5, 9999, 1];
const result = arr.sort();
console.log(result); // [1, 10, 1000, 3, 5, 9999]
console.log(arr); // [1, 10, 1000, 3, 5, 9999]
const arr = ['Justin', 'Jessie', 'Lia', 'Laura', 'Todd'];
const result = arr.sort();
console.log(result); // ["Jessie", "Justin", "Laura", "Lia", "Todd"]
console.log(arr); // ["Jessie", "Justin", "Laura", "Lia", "Todd"]
const arr = [
{ name: 'Justin', temperature: 36.5 },
{ name: 'Jessie', temperature: 36 },
{ name: 'Lia', temperature: 35.8 },
{ name: 'Laura', temperature: 36.1 },
{ name: 'Todd', temperature: 35.9 },
]
// temperature 기준 오름차순 정렬
const result = arr.sort(function (a, b) {
if (a.temperature > b.temperature) {
return 1;
}
if (a.temperature < b.temperature) {
return -1;
}
// a must be equal to b
return 0;
});
console.log(arr === result); // true
console.log(arr);
/*
[
{ name: 'Lia', temperature: 35.8 },
{ name: 'Todd', temperature: 35.9 },
{ name: 'Jessie', temperature: 36 },
{ name: 'Laura', temperature: 36.1 },
{ name: 'Justin', temperature: 36.5 },
]
*/
true
를 반환, 포함하고 있지 않으면 false
반환const arr = [1, 2, 3, 4, 5];
const result = arr.includes(2)
console.log(result); // true
Best
worst