본문 바로가기
javascript

배열 메소드 - slice(), includes(), find(), indexOf()

by dev__log 2024. 1. 3.

arr.slice(n,m) : n 부터 m 까지 반환

m 은 포함하지 않는다.

slice에 n,m 을 넣지 않을 경우 그대로 복사된다.

let arr = [1,2,3,4,5];
console.log(arr.slice(1,4)); //[2,3,4]

let arr2 = arr.slice();
console.log(arr2); //[1,2,3,4,5] 그대로 복사됨.

 

arr.includes() : 포함하는지 확인

인덱스가 필요없고 포함하는지만 확인하려면 includes() 를 사용한다.

let arr = [1,2,3];
console.log(arr.includes(2)); //true
console.log(arr.includes(5)); //false

 

arr.find(fn) : 조건에 만족하는 첫 번째 요소를 반환하고, 없으면 undefined를 반환

let userList = [
    {name:'Jim', age:23 },
    {name:'Jun', age:11 },
    {name:'Jin', age:47 }
]

const result = userList.find((user) => {
   if(user.age < 19){
       return true;
   }
    return false;
});
console.log(result) //{name: 'Jun', age: 11}

const result2 = userList.find((user) => {
   if(user.age > 19){
       return true;
   }
    return false;
});
console.log(result2); //{name: 'Jim', age: 23} - 47인 jin도 있지만 첫번째 true만 찾고 끝남.

const result3 = userList.find((user) => {
   if(user.age > 99){
       return true;
   }
    return false;
});
console.log(result3); //undefined

 

arr.filter 와 비슷하지만, filter는 조건에 맞는 모든 요소를 반환함.

 

arr.indexOf(item, from) : from 인덱스 지점부터 item 을 찾아 해당 요소의 인덱스를 반환

해당하는 값이 없을 경우 -1을 반환하며, from 값은 옵션이다.

let arr = [1,2,3,4,5,1];
arr.indexOf(3); //2
arr.indexOf(1, 1); //5 - 인덱스 1 자리부터 검색을 시작하여, 마지막 1의 인덱스 5를 반환

'javascript' 카테고리의 다른 글

모듈 module  (0) 2024.01.08
Set 자료구조  (0) 2024.01.04
호이스팅  (2) 2024.01.02
spread operator 전개 구문  (1) 2023.12.29
getElementsByClassName 과 querySelector  (1) 2023.12.27