배열안 같은 요소의 모든 위치 찾기(indexOf - 2nd param)

GY·2021년 10월 24일
0

메소드 정리

목록 보기
1/14
post-thumbnail

https://velog.io/@gygy/Code-Signal-Array-Replace

오늘자 알고리즘을 풀면서 사용한
모든 요소의 인덱스를 검색하는 방법에 대해 정리한다.

indexOf

arr.indexOf(searchElement[, fromIndex])
지금까지는 첫번째 매개변수만 썼었는데, 두 번째 매개변수 fromIndex에 대해 정리해보자.

fromIndex (optional)

검색을 시작할 인덱스를 지정한다.

  • 인덱스가 배열의 길이보다 같거나 클 경우 -1이 반환되어 검색되지 않는다.

배열 안 같은 요소의 모든 위치 찾기

fromIndex 매개변수로 반복 시마다 검색을 시작할 인덱스를 +1해주면, 이미 검색한 첫번째 인덱스 값 외 다른 모든 인덱스 값을 검색할 수 있다.

요소의 모든 항목 찾기
var indices = [];
var array = ['a', 'b', 'a', 'c', 'a', 'd'];
var element = 'a';
var idx = array.indexOf(element);
while (idx != -1) {
  indices.push(idx);
  idx = array.indexOf(element, idx + 1);
}
console.log(indices);
// [0, 2, 4]

Reference

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf

profile
Why?에서 시작해 How를 찾는 과정을 좋아합니다. 그 고민과 성장의 과정을 꾸준히 기록하고자 합니다.

0개의 댓글