Frontend practice/java script

js 배열내장 함수

판다꼬마 2022. 5. 17. 23:44
728x90

 

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(" "));

이렇게 작성하면 된다.

728x90