js 배열내장 함수
const arr = [1, 2, 3, 4];
for (let i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
==
const arr = [1, 2, 3, 4];
arr.forEach((elm) => console.log(elm));
==
const arr = [1, 2, 3, 4];
arr.forEach(function (elm) {
console.log(elm);
});
이것도 마찬가지로 같다
-forEach
배열의 내장 함수는 배열의 모든 것을 하나씩 순회할 수 있게 해 준다.
elm에 파라미터로 전달해주면서 한개씩 출력한다.
-map
원본배열의 모든 값을 순회해서 return 값을 반환해준다.
const arr = [1, 2, 3, 4];
const newArr = arr.map((elm) => {
return elm * 2;
});
console.log(newArr);
==
arr.forEach((elm) => {
if (elm === number) {
console.log(true);
}});
-include
console.log(arr.includes(number));
주어진 배열에서 인자로 받은 값이 있는지 없는지를 boolean으로 반환한다.
-indexOf
indexOf 전달받은 인자 값을 가지고 배열에 가서 비교한다
있으면 배열에서 몇번째에 있나를 반환한다.
없으면 -1반환
-findIndex
const arr = [
{ num: 1, color: "red" },
{ num: 2, color: "blue" },
{ num: 3, color: "black" },
{ num: 4, color: "green" },
{ num: 5, color: "red" }
];
console.log(
arr.findIndex((elm) => {
return elm.color === "blue";
})
);
주의할점이 찾고 있는 값이 여러 개 일 때
제일 먼저 찾은 값의 index를 반환한다.
-find
index말고 요소 자체를 반환받고 싶으면
find를 사용하면 된다.
-filter
fillter 배열에서 특정한 조건을 만족하는 것을 배열로 반환받는다.
console.log(arr.filter((elm) => elm.color === "red"));
-slice
console.log(arr.slice(0, 2));
첫 번째 인자 begin 두 번째 인자 end
end-1까지만 잘라서 반환한다.
-concat
const arr1 = [
{ num: 1, color: "red" },
{ num: 2, color: "blue" },
{ num: 3, color: "black" }
];
const arr2 = [
{ num: 4, color: "green" },
{ num: 5, color: "red" }
];
console.log(arr1.concat(arr2));
concat 앞뒤를 붙인다
-sort
let chars = ["나", "다", "가"];
chars.sort();
console.log(chars);
원본 배열의 순서를 정렬한다.
sort는 사전 순으로 정렬하기 때문에
숫자를 정렬할때는
const compare = (a, b) => {
if (a > b) {
return 1;
} else if (a < b) {
return -1;
} else {
return 0;
}
};
이렇게 사용을 하여
chars.sort(compare);
이렇게 넣어주면 숫자도 정렬이 된다.
만약 내림차순으로 정렬하고 싶으면 return 값을
1과 -1 위치를 바꾸면 된다.
-join
const arr = ["추성 준", "님", "안녕하세요", "또 오셨군요"];
console.log(arr.join());
이렇게 하면 쉼표를 기준으로 합쳐준다.
쉼표가 싫으면
console.log(arr.join(" "));
이렇게 작성하면 된다.