-
Javascript find()문법javascript 2023. 2. 24. 17:21728x90
Javascript find() 문법이란?
find()문법에 대해서
배열 내에서 제공된 콜백 함수로부터 true를 반환하는 첫 번째 요소를 반환한다.
즉, 배열에서 조건에 해당하는 첫 번째 요소를 찾아서 반환한다.
만약 요소를 찾지 못하면 undefined를 반환한다.
arr.find(callback(element[, index[, array]])[, thisArg])- callback : 각 요소를 검사할 콜백함수이다. 다음 세가지 매개 변수를 받는다.
- element : 현재 요소
- index : 현재 요소의 인덱스
- array : 검색하는 배열
- thisArg : callback에서 this로 사용할 객체
find()메서드는 배열의 첫 번째 요소부터 순차적으로 실행하며, 콜백 함수에서 true를 반환하는 요소를 찾으면 검색을 중지하고 해당 요소를 반환한다.
이 때 반환하는 값은 요소 그 자체이다. 콜백 함수에서 반환하는 것이 true 또는 false가 아니라 요소 자체를 반환해야 한다.
예제)
const numbers = [1,2,3,4,5] const even = numbers.find((num)=>num%2 === 0); console.log(even); //2위의 예제에서 알 수 있듯이 find() 메서드는 배열 numbers에서 짝수인 첫 번째 요소를 찾아 반환한다.
find()문법 언제 활용하면 좋을까?
특정 조건을 만족하는 첫 번째 요소를 찾을 때
const users = [ {id:1,name:"Alice"}, {id:2,name:"Bob"}, {id:3,name:"Charlie"} ] const user = users.find(u => u.name === 'Bob'); console.log(user); //{ id:2,name:'Bob' }예시로 find()메서드를 이용해 첫 번째 요소를 찾을 때까지 배열을 순회할 필요가 없다.
배열에서 값을 찾을 때
배열에서 값을 찾을 때예시로 배열 내에서 특정 값이 있는지 확인할 수 있다.
const numbers = [1,2,3,4,5]; const hasThree = numbers.find(n=>n===3); console.log(hasThree); //3객체 배열에서 특정 속성을 찾을 때
예시로 name속성이 Bob인 객체를 찾기
const users = [ {id:1,name:"Alice"}, {id:2,name:"Bob"}, {id:3,name:"Charlie"} ]; const user = users.find(u=>u.name === 'Bob'); cosole.log(user); //{ id:2,name:"Bob" }객체 배열에서 조건에 따라 여러 값을 찾을 때
예시로 배열 내에서 여러 개의 값을 찾는 경우, filter()와 find()메서드를 조합해 사용할 수 있다.
const numbers = [1,2,3,4,5]; const even = numbers.filter(n=>n%2===0); const firstEven = even.find(n=>n>2); console.log(firstEven); //4filter()메서드로 배열에서 짝수만 추출한 후 find()메서드를 통해 2보다 큰 첫 번째 요소를 찾는다.
반응형'javascript' 카테고리의 다른 글
Javascript Set객체 (0) 2023.03.04 Javascript findIndex()문법 (0) 2023.03.02 Javascript slice()문법 (0) 2023.02.24 자바스크립트 문제 풀기2 (0) 2022.12.21 자바스크립트 문제 풀기 (0) 2022.12.19 - callback : 각 요소를 검사할 콜백함수이다. 다음 세가지 매개 변수를 받는다.