logo

JavaScript에서 값을 사용하여 배열 인덱스 찾기

JavaScript 배열에서 특정 값의 인덱스 찾기 원하는 값의 위치를 ​​찾기 위해 배열의 요소를 검색하는 작업이 포함됩니다. 이 인덱스는 배열 내의 값에 액세스하거나 값을 조작하기 위한 참조 지점 역할을 합니다.

여우와 늑대의 차이

예시 1:



Input: ['apple', 'banana', 'cherry', 'orange'] N = 'cherry' Output: 2 Explanation: The index of the word cherry is 2>

이를 사용하여 값이 있는 배열 인덱스를 찾을 수 있는 다음과 같은 접근 방식이 있습니다.

내용의 테이블

indexOf() 메소드 사용

  • 우리는 과일 배열을 가지고 있고 '체리' 요소의 인덱스를 찾고 싶습니다.
  • 우리는 인덱스() 과일 배열에서 'cherry'를 검색하는 메서드를 사용하면 'cherry'의 인덱스인 2가 반환됩니다.

예: 이 예는 위에서 설명한 접근 방식을 구현한 것입니다.

자바스크립트
const fruits = ['apple', 'banana', 'cherry', 'orange']; const index = fruits.indexOf('cherry'); console.log(index); // Output: 2>

산출
2>

findIndex() 메소드 사용

  • 그만큼 findIndex() 메소드 JavaScript에서는 특정 조건이나 테스트 기능을 충족하는 배열의 초기 요소 인덱스를 가져오는 데 사용됩니다.
  • 이 메서드는 테스트를 통과한 첫 번째 요소의 인덱스를 반환하거나 테스트를 통과한 요소가 없으면 -1을 반환합니다. findIndex() 메소드는 원래 배열을 수정하지 않습니다.

예 : 이 예는 위에서 설명한 접근 방식을 구현한 것입니다.

미국에는 몇 개의 도시가 있나요?
자바스크립트
const array = [10, 20, 30, 40]; const index = array.findIndex(num =>숫자> 25); console.log(index); // 출력: 2>

산출
2>

for 루프 사용

  • 특정 값이 있는 배열의 인덱스를 찾는 또 다른 방법은 for 루프를 사용하여 배열을 반복하고 각 요소를 값과 비교하는 것입니다.
  • 루프는 숫자 배열의 각 요소를 반복하고 현재 요소가 30과 같은지 확인합니다.
  • 인덱스 2에서 요소 30이 발견되면 break 문을 사용하여 루프가 종료되고 인덱스 2가 인덱스 변수에 저장됩니다.
  • 마지막으로 index 변수가 콘솔에 기록되어 2가 출력됩니다.

예 : 이 예는 위에서 설명한 접근 방식을 구현한 것입니다.

자바스크립트
const arraynumbers = [10, 20, 30, 40]; let index = -1; for (let i = 0; i < arraynumbers.length; i++) {  if (arraynumbers[i] === 30) {  index = i;  break;  } } console.log(index); // Output: 2>

산출
2>

Lodash _.findIndex() 메소드 사용

  • 이 접근 방식에서는 기능을 위해 JavaSCript 라이브러리인 lodash를 사용하고 있습니다.
  • 기능이 내장되어 있습니다. _.찾기인덱스() 주어진 값의 인덱스를 찾는 데 사용할 수 있습니다.
  • 배열의 주어진 값을 전달해야 하며 인덱스 번호가 반환됩니다.

예: 이 예는 위에서 설명한 접근 방식을 구현한 것입니다.

자바스크립트
// Requiring the lodash library const _ = require('lodash'); // Original array let array1 = [4, 2, 3, 1, 4, 2] // Using lodash.findIndex let index = _.findIndex(array1, (e) =>{ return e == 1; }, 0); // 원본 배열 인쇄 console.log('original Array: ', array1) // 인덱스 인쇄 console.log('index: ', index)>

산출:

original Array: [ 4, 2, 3, 1, 4, 2] index: 3>

감소 방법 사용

그만큼 감소 방법 배열 요소를 반복하여 각 요소를 대상 값과 비교합니다. 값이 발견되면 인덱스를 반환하고 누산기를 업데이트합니다. 그렇지 않으면 -1을 반환합니다.

예: 이 예에서 축소 메소드는 배열의 각 항목을 반복합니다. 현재 항목이 검색 중인 값과 일치하고 누산기가 여전히 -1인 경우(항목이 아직 발견되지 않았음을 의미) 현재 인덱스를 반환합니다.

자바스크립트
const fruits = ['apple', 'banana', 'cherry', 'orange']; const value = 'cherry'; const index = fruits.reduce((acc, item, currentIndex) =>{ if (항목 === 값 && acc === -1) { return currentIndex;  } 반환 acc; }, -1); console.log(index);>

산출
2>