[ES6] 24. .indexOf 의 첫번째 인덱스, 두번째 인덱스, 세번째 인덱스 찾기 실습
본문 바로가기

컴퓨터공부/Javascript

[ES6] 24. .indexOf 의 첫번째 인덱스, 두번째 인덱스, 세번째 인덱스 찾기 실습

by Life & study 2023. 6. 10.
반응형

indexOf와 lastIndexOf는 배열에서 특정 요소의 위치를 찾는 메소드입니다. indexOf는 배열의 처음부터 찾으며 처음 발견한 요소의 인덱스를 반환하고, lastIndexOf는 배열의 끝에서부터 찾아 처음 발견한 요소의 인덱스를 반환합니다.


다음은 indexOf와 lastIndexOf를 사용한 예시입니다:

javascript
const fruits = ["1", "2", "3", "4", "2", "5"];

// indexOf 메소드를 사용하여 특정 요소의 배열 인덱스를 찾습니다.
const indexOf2 = fruits.indexOf("2");
document.write("첫 번째로 발견된 '2'의 인덱스: " + indexOf2 + "<br>");

// lastIndexOf 메소드를 사용하여 특정 요소의 배열 인덱스를 찾습니다.
const lastIndexOf2 = fruits.lastIndexOf("2");
document.write("마지막으로 발견된 '2'의 인덱스: " + lastIndexOf2 + "<br>");
이 코드는 다음과 같은 결과를 출력합니다:

첫 번째로 발견된 '2'의 인덱스: 1
마지막으로 발견된 '2'의 인덱스: 4
indexOf와 lastIndexOf 메소드를 사용하면 배열에서 원하는 요소를 찾아 그 인덱스를 반환할 수 있습니다. 만약 배열에 해당 요소가 없다면, -1이 반환됩니다.

 

const fruits = ["1", "2", "3", "4", "2", "5"];

// indexOf 메소드를 사용하여 특정 요소의 배열 인덱스를 찾습니다.
const indexOf2 = fruits.indexOf("2");
document.write("첫 번째로 발견된 '2'의 인덱스: " + indexOf2 + "<br>");

// lastIndexOf 메소드를 사용하여 특정 요소의 배열 인덱스를 찾습니다.
const lastIndexOf2 = fruits.lastIndexOf("2");
document.write("마지막으로 발견된 '2'의 인덱스: " + lastIndexOf2 + "<br>");

 

 

.fruits.indexOf 의 첫번째  인덱스, 두번째 인덱스, 세번째 인덱스  찾기 실습

 

const fruits = ["1", "2", "3", "4", "2", "5", "2", "3", "2"];

// 첫 번째 "2"의 인덱스를 찾습니다.
const firstIndexOf2 = fruits.indexOf("2");

// 첫 번째 "2" 이후의 배열에서 두 번째 "2"의 인덱스를 찾습니다.
const secondIndexOf2 = fruits.indexOf("2", firstIndexOf2 + 1);

// 두 번째 "2" 이후의 배열에서 세 번째 "2"의 인덱스를 찾습니다.
const thirdIndexOf2 = fruits.indexOf("2", secondIndexOf2 + 1);

document.write("첫 번째 '2'의 인덱스: " + firstIndexOf2 + `<br>`);
document.write("두 번째 '2'의 인덱스: " + secondIndexOf2 + `<br>`);
document.write("세 번째 '2'의 인덱스: " + thirdIndexOf2);

 

 

인덱스 위치 찾기

 

const fruits = ["1", "2", "3", "4", "2", "5", "2", "3", "2"];

let currentIndex = -1;
let count = 0;

// "2" 존재하는 동안 계속해서 인덱스를 찾습니다.
while (true) {
  currentIndex = fruits.indexOf("2", currentIndex + 1);

  // "2"가 없으면 종료합니다.
  if (currentIndex === -1) {
    break;
  }
  count++;
  document.write(count + " 번째 '2'의 인덱스: " + currentIndex + `<br>`);
}

 

 

댓글