스택큐힙리스트

JavaScript에서 배열의 시작에 새로운 배열 요소를 어떻게 추가할 수 있을까요? 본문

카테고리 없음

JavaScript에서 배열의 시작에 새로운 배열 요소를 어떻게 추가할 수 있을까요?

스택큐힙리스트 2024. 1. 23. 07:00
반응형

나는 배열의 시작에 요소를 추가하거나 전단하기 위해 필요성을 느낍니다.


예를 들어, 아래와 같이 배열이 있다면:


[23, 45, 12, 67]

그리고 AJAX 호출로부터의 응답이 34라면, 업데이트된 배열은 다음과 같이 나타내고 싶습니다:


[34, 23, 45, 12, 67]

현재 나는 다음과 같이 이를 수행할 계획입니다:


var newArray = [];
newArray.push(response);
for (var i = 0; i < theArray.length; i++) {
newArray.push(theArray[i]);
}
theArray = newArray;
delete newArray;

이를 수행하기 위해 더 나은 방법이 있는지 알고 싶습니다. JavaScript에는 이 작업을 수행하는 내장 기능이 있는지 여부도 궁금합니다.


내 방법의 복잡도는 O(n)이며, 더 나은 구현 방법을 볼 수 있다면 정말 흥미로울 것입니다.

답변 1

concat는 항목을 추가하는 데에도 사용될 수 있습니다. concat의 인수는 어떤 유형이든 될 수 있으며, 이미 배열이 아닌 경우에는 암시적으로 단일 요소 배열로 감싸집니다:



const array = [3, 2, 1]
const newLastElement = 0
// 이 두 줄은 같은 결과를 출력합니다:
const newArray1 = array.concat(newLastElement) // [ 3, 2, 1, 0 ]
const newArray2 = array.concat([newLastElement]) // [ 3, 2, 1, 0 ]
console.log(newArray1);
console.log(newArray2);


답변 2

어레이의 시작 부분에 새로운 요소를 추가하는 방법은 JavaScript에서 매우 간단합니다. 이 작업을 수행하기 위해 우리는 원래의 어레이에 unshift() 메소드를 사용할 수 있습니다.
unshift() 메소드는 어레이의 시작 부분에 하나 이상의 요소를 추가합니다. 추가된 요소들은 다른 요소들의 인덱스를 바꾸지 않고 첫 번째 인덱스(인덱스 0)에 위치합니다.
다음은 unshift() 메소드의 사용법입니다:
```
var array = [3, 4, 5];
array.unshift(1, 2);
console.log(array); // 출력: [1, 2, 3, 4, 5]
```
위의 예시에서, `[1, 2]`라는 새로운 요소가 `unshift()` 메소드를 사용하여 어레이의 시작 부분에 추가되었습니다. 그런 결과로 어레이의 첫 번째 인덱스에 해당하는 요소는 3으로 바꼈습니다.
unshift() 메소드는 기존 어레이에 새로운 요소를 추가하기 때문에, 추가되는 요소의 수에 따라 어레이의 길이가 자동으로 증가합니다.
이 방법으로, 우리는 JavaScript에서 어레이의 시작 부분에 새로운 요소를 추가할 수 있습니다. 이 유용한 메소드를 사용하여 본인의 프로그래밍 작업을 수행하는 데 성공적이기 바랍니다.

반응형
Comments