includes() , indexOf() 배열에 해당 요소의 포함 여부를 확인하는 메소드

YS_Study.log·2022년 1월 15일
0

배열 요소의 포함 여부를 확인하는 메소드


indexOf()

찾고자하는 특정요소가 배열내에 포함되는지 존재여부와 인덱스 정보를 알 수 있다. (모든 브라우져 호환 O)

  • 특정요소를 입력할 시 인덱스 값이 리턴되고, 배열에 없는 요소를 입력할 시 무조건 -1이 리턴된다.
  • 배열에 없는 요소 또는 다른 타입의 요소 입력할 경우 → -1 이라는 값을 활용하여 타입이 무엇인지, 배열의 요소가 있는지 없는지를 알 수 있다.
// foods에 '치킨'이 있는지 확인하려면?
let foods = ['치킨', '피자', '보쌈'];  

console.iog(foods.indexof('치킨')) // 0 // 해당 요소의 인덱스값 리턴
console.iog(foods.indexof('쌈장')) // -1 // 없는 요소는 -1 리턴 

// '피자'가 있는지 없는지 확인하려면? 불리언값
console.iog(foods.indexof('피자') !== -1) // true 

// foods.indexof('피자') 값이 -1이 아니라면? 배열에 있는 요소란 뜻이다.
console.iog(foods.indexof('똥') !== -1) // false

// 함수로 만든다면? function hasElement (배열, 찾으려는 엘리먼트(요소))

function hasElement (arr, element) {
   let isPresent = arr.indexOf(element) !== -1 }; 
return hasElement(foods, '치킨')
// 바로 return arr.indexOf(element) !== -1 }; 해도 됨.

console.log(poods, '치킨') // true;
console.log(poods, '과자') // false;

.includes()

특정 요소의 인덱스 정보는 알 수 없고, 배열에 포함되어 있는지 존재여부만 알 수 있다. (explorer 호환X)

//// foods에 '치킨'이 있는지 확인하려면?
let foods = ['치킨', '피자', '보쌈'];  

console.iog(foods.includes('치킨')) // true;
console.iog(foods.includes('쌈장')) // fase;
profile
느리지만 조금씩 공부하는 중 입니다. 현재 1년 6개월차 신입입니다 ><!

0개의 댓글