배열 요소에 특정 값을 찾아 대체하기
자바스크립트에서 배열 요소에 특정 값을 찾아 대체하는 방법을 알아보겠습니다. 이는 배열에서 특정 값의 인덱스를 찾고 해당 인덱스에 새로운 값을 할당하는 것을 의미합니다.
예제 코드
아래 예제는 배열에서 특정 값을 찾아 대체하는 방법을 보여줍니다.
let fruits = ['apple', 'banana', 'orange', 'grape'];
// 'banana'를 'pear'로 대체
let index = fruits.indexOf('banana');
if (index !== -1) {
fruits[index] = 'pear';
}
console.log(fruits); // ['apple', 'pear', 'orange', 'grape']
위 코드에서 우리는 indexOf
메서드를 사용하여 ‘banana’의 인덱스를 찾았습니다. 이때 반환값이 -1인지 확인해야합니다. 반환값이 -1이 아닌 경우, 배열의 해당 인덱스에 새로운 값을 할당하여 대체합니다.
주의사항
indexOf
메서드는 배열에서 해당 값이 처음으로 등장하는 인덱스를 반환합니다. 따라서 배열에 중복된 값이 있는 경우, 첫 번째로 등장하는 값만 대체됩니다. 모든 등장하는 값을 대체하려면 반복문을 사용해야합니다.- 만약 대체하고자 하는 값이 배열에 없는 경우,
-1
을 반환하므로 주의해야합니다.