본문 바로가기

카테고리 없음

자바스크립트 find, filter, map

출처: https://ko.javascript.info/array-methods

배열을 변형하는 메서드들

#find
특정 조건에 부합하는 객체를 배열 내에서 찾을 때 사용
문법 - arr.find(fn)

let users = [
  {id: 1, name: "John"},
  {id: 2, name: "Pete"},
  {id: 3, name: "Mary"}
];

let user = users.find(item => item.id == 1);

alert(user.name); // John

#filter
find 메서드는 함수의 반환 값을 true로 만드는 단 하나의 요소를 찾는데, 조건을 충족하는 요소가 여러개라면 filter 메서드를 사용할 수 있다.

문법 - arr.filter(fn)

let users = [
  {id: 1, name: "John"},
  {id: 2, name: "Pete"},
  {id: 3, name: "Mary"}
];

// 앞쪽 사용자 두 명을 반환합니다.
let someUsers = users.filter(item => item.id < 3);

alert(someUsers.length); // 2

#map
배열 요소 전체를 대상으로 함수를 호출하고, 함수 호출 결과를 배열로 반환해줍니다.

ex)
let lengths = ["Bilbo", "Gandalf", "Nazgul"].map(item => item.length);
alert(lengths); // 5,7,6