자바스크립트 기본 문법 – 배열 – 배열 메서드 – 6 – indexOf

자바스크립트 기본 문법 – 배열 – 배열 메서드 – 6 – indexOf

배열에서 원하는 항목 찾기: indexOf()

소제목: indexOf() 메서드란?

indexOf() 메서드는 배열에서 원하는 항목을 찾아 해당 항목의 인덱스를 반환하는 자바스크립트 배열 메서드입니다. 이 메서드는 주어진 값과 일치하는 첫 번째 항목의 인덱스를 찾아줍니다. 만약 일치하는 항목이 없으면 -1을 반환합니다. 이를테면, 당신이 초콜릿 상자에서 사탕을 찾아야 할 때, 사탕의 종류를 알고 있다면 이 메서드를 사용하여 사탕의 위치를 찾을 수 있습니다!

예시:

const candies = ['딸기맛', '바나나맛', '사과맛', '오렌지맛', '딸기맛'];

const index = candies.indexOf('사과맛');
console.log(index); // 2

const nonExistentIndex = candies.indexOf('포도맛');
console.log(nonExistentIndex); // -1

위의 예시에서는 candies 배열에서 ‘사과맛’을 찾기 위해 indexOf() 메서드를 사용했습니다. 결과로서 ‘사과맛’은 인덱스 2에 위치해 있음을 알 수 있습니다. 또한, ‘포도맛’은 배열에 존재하지 않으므로 -1을 반환합니다.

자바스크립트 기본 문법과 배열에서의 indexOf() 활용하기

자바스크립트에서 배열은 데이터를 효율적으로 저장하고 관리하는 데 사용되는 중요한 개념입니다. indexOf() 메서드는 배열에서 특정 항목을 찾을 때 유용하게 활용될 수 있습니다. 예를 들어, 가게에서 재고 목록을 배열로 저장하고, 특정 상품이 재고에 있는지 확인하고자 할 때 indexOf() 메서드를 활용할 수 있습니다. 또는 사용자가 입력한 검색어가 배열에 있는지 확인하기 위해서도 사용될 수 있습니다.

const inventory = ['사과', '바나나', '오렌지', '포도', '복숭아'];

const userInput = prompt('찾고자 하는 과일을 입력하세요.');
const index = inventory.indexOf(userInput);

if (index !== -1) {
  console.log('재고 목록에 있습니다!');
} else {
  console.log('재고 목록에 없습니다!');
}

위의 예시에서는 사용자로부터 입력받은 과일이 inventory 배열에 있는지 확인하고 있습니다. 입력값을 indexOf() 메서드를 통해 배열에서 찾은 후, 결과를 통해 사용자에게 메시지를 출력합니다.

주의해야 할 점:

  1. indexOf() 메서드는 배열에서 첫 번째로 일치하는 항목의 인덱스를 반환합니다. 따라서 배열에 중복된 항목이 있다면, 항상 첫 번째로 일치하는 인덱스만 반환되니 유의해야 합니다.
  2. indexOf() 메서드는 일치하는 항목을 찾을 때 대소문자를 구분합니다. 예를 들어, ‘apple’을 찾을 때 ‘Apple’과 일치하지 않습니다.
  3. ES6부터는 includes() 메서드를 사용하여 배열에 항목이 포함되어 있는지 확인할 수도 있습니다. 이 메서드는 일치하는 항목이 있는지 여부를 불리언 값으로 반환합니다.

답글 남기기