상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - 자바스크립트에서 Array.prototype.fill()의 사용법은 무엇인가요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
`Array.prototype.fill()` 메서드는 <a href='https://sangseek.com/sangseeks/자바/ko'>자바</a>스크립트에서 배열의 모든 요소를 특정 값으로 채우는 데 사용됩니다. 이 메서드는 배열의 특정 범위에 대해 값을 설정할 수 있으며, 기본적으로 배열의 모든 요소를 채울 수 있습니다. `fill()` 메서드는 원본 배열을 변경하며, 새로운 배열을 반환하지 않습니다. 사용법 `fill()` 메서드는 다음과 같은 구문을 가지고 있습니다: ```javascript array.fill(value, start, end) ``` - value : 배열의 각 요소를 채울 값입니다. 이 값은 배열의 모든 요소에 할당됩니다. - start (선택적): 배열의 시작 인덱스입니다. 기본값은 `0`입니다. - end (선택적): 배열의 끝 인덱스입니다. 이 인덱스는 포함되지 않습니다. 기본값은 배열의 길이입니다. 예제 1. 기본 사용법 ```javascript let arr = new Array(5); arr.fill(0); console.log(arr); // [0, 0, 0, 0, 0] ``` 위의 예제에서 `new Array(5)`는 길이가 5인 빈 배열을 생성합니다. `fill(0)` 메서드를 호출하여 배열의 모든 요소를 `0`으로 채웁니다. 2. 부분적으로 채우기 ```javascript let arr = [1, 2, 3, 4, 5]; arr.fill(0, 1, 4); console.log(arr); // [1, 0, 0, 0, 5] ``` 이 예제에서는 배열의 인덱스 `1`부터 `4`까지의 요소를 `0`으로 채웁니다. 인덱스 `4`는 포함되지 않기 때문에 결과는 `[1, 0, 0, 0, 5]`가 됩니다. 3. 음수 인덱스 사용 음수 인덱스를 사용하여 배열의 끝에서부터 요소를 채울 수도 있습니다. ```javascript let arr = [1, 2, 3, 4, 5]; arr.fill(0, -3); console.log(arr); // [1, 2, 0, 0, 0] ``` 이 경우 `-3`은 배열의 끝에서 세 번째 요소를 가리키며, 그 위치부터 배열의 끝까지 `0`으로 채워집니다. 주의사항 - `fill()` 메서드는 원본 배열을 변경합니다. 따라서 원본 배열을 유지하고 싶다면, 먼저 배열을 복사한 후 `fill()`을 호출해야 합니다. - 객체나 배열과 같은 참조 타입을 `fill()` 메서드로 채울 경우, 모든 요소가 동일한 참조를 공유하게 됩니다. 즉, 하나의 요소를 변경하면 다른 요소에도 영향을 미칩니다. ```javascript let arr = new Array(3).fill({}); arr[0].name = "Alice"; console.log(arr); // [{ name: "Alice" }, { name: "Alice" }, { name: "Alice" }] ``` 위의 예제에서 모든 요소가 동일한 객체를 참조하므로, 하나의 요소를 변경하면 모든 요소에 동일한 변화가 반영됩니다. 결론 `Array.prototype.fill()` 메서드는 배열을 간편하게 특정 값으로 채울 수 있는 유용한 도구입니다. 배열의 모든 요소를 채우거나 특정 범위의 요소를 채우는 데 사용할 수 있으며, 음수 인덱스를 통해 배열의 끝에서부터 채우는 것도 가능합니다. 그러나 원본 배열이 변경된다는 점과 참조 타입을 사용할 때의 주의사항을 염두에 두어야 합니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기