javascript에서 배열에 원하는 특정 값이 포함되어 있는 지 확인하는 방법이 여러가지 있다.

indexOf()

  • string 객체에서 주어진 값과 일치하는 첫 번째 인덱스 반환한다. 일치하는 값이 없으면 -1을 반환한다. ( 대소문자를 구분한다 )

문법 : str.indexOf(searchValue[, fromIndex]) ( fromIndex는 optional한 값 )

fromIndex 찾기 시작하는 위치를 나타내는 인덱스 값으로 아래 예시 중 마지막 str.indexOf("I", 5) 에서 “ I ” 위치 뒤인 5번 부터 시작하여 -1을 반환한다.

 

lastIndexOf()

  • 주어진 값과 일치하는 부분을 fromIndex로 부터 역순으로 탐색하여, 최초로 마주치는 인덱스를 반환한다. 일치하는 부분을 찾을 수 없으면 -1을 반환한다. (마지막으로 일치하는 값에 대한 인덱스를 반환)

문법 : str.lastIndexOf(searchValue[, fromIndex]) ( fromIndex는 optional한 값 )

 

includes()

  • 배열의 항목에 특정 값이 포함되어 있는지 판단하여 true또는 false를 반환한다.

문법 : includes(searchElement, fromIndex) ( fromIndex는 optional한 값 )

 

document.writeln(drinks.includes('wine', -1)); 설명

fromIndex 자리에 음수가 들어가면, 실제 시작 index는 '배열의 길이 + fromIndex' 로 계산된다. 배열의 길이는 3이고, fromIndex는 -1이므로, 실제 검색을 시작하는 index는 2이가 됩니다.  (3 + (-1)) arr[2]에 ‘wine’가 있어, true가 반환 된다

 

document.writeln(drinks.includes('wine', 3)); 설명

fromIndex가 배열 길이보다 크거나 같은 경우 false가 반환 된다.

 

 

findIndex()

  • 주어진 조건(판별 함수)을 만족하는 배열의 첫 번째 요소에 대한 인덱스를 반환한다. 만족하는 요소가 없으면 -1을 반환한다.

문법 : findIndex(callbackFn, thisArg) ( thisArg는 optional한 값 )

 

 

some()

  • 배열 안의 어떤 요소라도 주어진 판별 함수를 적어도 하나라도 통과하는지 테스트하여 true, false를 반환한다.

문법 : some((element, index, array) => { /* … */ }) / some(function (element, index, array) { /* … */ }, thisArg) ( thisArg는 optional한 값 )

 

 

 

참고

 

String.prototype.indexOf() - JavaScript | MDN

indexOf() 메서드는 호출한 String 객체에서 주어진 값과 일치하는 첫 번째 인덱스를 반환합니다. 일치하는 값이 없으면 -1을 반환합니다.

developer.mozilla.org

 

 

String.prototype.lastIndexOf() - JavaScript | MDN

lastIndexOf() 메서드는 주어진 값과 일치하는 부분을 fromIndex로부터 역순으로 탐색하여, 최초로 마주치는 인덱스를 반환합니다. 일치하는 부분을 찾을 수 없으면 -1을 반환합니다.

developer.mozilla.org

 

 

Array.prototype.includes() - JavaScript | MDN

Array 인스턴스의 includes() 메서드는 배열의 항목에 특정 값이 포함되어 있는지를 판단하여 적절히 true 또는 false를 반환합니다.

developer.mozilla.org

 

 

Array.prototype.findIndex() - JavaScript | MDN

Array 인스턴스의 findIndex() 메서드는 주어진 판별 함수를 만족하는 배열의 첫 번째 요소에 대한 인덱스를 반환합니다. 만족하는 요소가 없으면 -1을 반환합니다.

developer.mozilla.org

 

 

Array.prototype.some() - JavaScript | MDN

some() 메서드는 배열 안의 어떤 요소라도 주어진 판별 함수를 적어도 하나라도 통과하는지 테스트합니다. 만약 배열에서 주어진 함수가 true을 반환하면 true를 반환합니다. 그렇지 않으면 false를

developer.mozilla.org

 

 

Array.prototype.some() - JavaScript | MDN

some() 메서드는 배열 안의 어떤 요소라도 주어진 판별 함수를 적어도 하나라도 통과하는지 테스트합니다. 만약 배열에서 주어진 함수가 true을 반환하면 true를 반환합니다. 그렇지 않으면 false를

developer.mozilla.org

 

'Javascript' 카테고리의 다른 글

반복문  (0) 2024.08.24
Promise와 axios, fetch  (0) 2024.08.24
타이머 함수 - setTimeout(), setInterval()  (0) 2024.08.24
문자열 자르기  (0) 2024.08.24
mobile 100vh  (0) 2024.08.22
minsun309