새로운 어레이 추가 요소를 Javascript 에서 어레이에서는 시작할 때 어떻게 해야 합니까?

I have a 필요한 요소를 추가하거나 prepend 맨 앞에 어레이에서는.

예를 들어, 만약 내 어레이입니다 looks like 다음과 같습니다.

[23, 45, 12, 67]

Ajax 는 '34' call from my 및 응답, I want to be 업데이트된 어레이입니다 다음과 같습니다.

[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) '와' 내 방법은 아주 흥미로운 구현을 위해 개선될 수 있을 것입니다.

질문에 대한 의견 (3)
해결책

['Unshift'] [1] 사용합니다. ['푸시'] [2] # 39 의 it& 등 이 모든 요소를 시작하는 어레이입니다 자도으로 대신 및끝.

'-' / '-' unshift 누름식 요소를 추가하여 시작 / 끝으로 어레이에서는

  • '팝' - '/' 의 첫 번째 / 마지막 요소를 제거하고 반품하십시오 shift+ctrl 어레이에서는

간단한 구성도를.

<! - 언어: &gt 랑 없음 -;


   unshift -> array 
해설 (2)

! 어레이입니다 운영체 이미지

<! - begin 스니핏: js 숨기십시오: 거짓값 콘솔: 진정한 바벨. &gt 거짓값 -;

var a = [23, 45, 12, 67];
a.unshift(34);
console.log(a); // [34, 23, 45, 12, 67]

끝 - &lt 스니핏 >;!

해설 (8)

ES6 함께 사용하여 전파하므로 작동자 '.'.

  • 데모 *

<! - begin 스니핏: js 숨기십시오: 거짓값 콘솔: 진정한 바벨. &gt 거짓값 -;

var arr = [23, 45, 12, 67];
arr = [34, ...arr]; // RESULT : [34,23, 45, 12, 67]

console.log(arr)

끝 - &lt 스니핏 >;!

해설 (4)

그렇게 할 수 있는 다른 방법을 통해 'concat'

<! - begin 스니핏: js 숨기십시오: 거짓값 콘솔: 진정한 바벨. &gt 거짓값 -;

var arr = [1, 2, 3, 4, 5, 6, 7];
console.log([0].concat(arr));

끝 - &lt 스니핏 >;!

차이점은 '' 에로남이네 '' 새 '와' unshift concat concat 되돌려줍니다 어레이입니다. 그들 사이에 성능을 찾을 수 있다 [here] (http://jsperf.com/unshift-item-inside-an-array/12).

function fn_unshift() {
  arr.unshift(0);
  return arr;
}

function fn_concat_init() {
  return [0].concat(arr)
}

다음은 테스트 결과

! [입력하십시오. 이미지 여기에 설명을] [1]

해설 (7)
  • 빠른 Cheatsheet:*

이 용어는 shift+ctrl / unshift 및 누름식 / pop 를 조금 헷갈리게 하는 사람들은 적어도 익숙하지 않을 수 있는 c 프로그래밍

익숙하지 않은 경우, 그 다음은 요약 뷰대체 약관보다 더 쉽게 할 수 있을 수 있는 뜻 모를 말 번역 너희에게베풀어진:

* array_unshift()  -  (aka Prepend ;; InsertBefore ;; InsertAtBegin )     
* array_shift()    -  (aka UnPrepend ;; RemoveBefore  ;; RemoveFromBegin )

* array_push()     -  (aka Append ;; InsertAfter   ;; InsertAtEnd )     
* array_pop()      -  (aka UnAppend ;; RemoveAfter   ;; RemoveFromEnd ) 
해설 (0)

어레이에서는 있습니다. '도착' var = [23 (45), 12, 67];

초기 '항목을 추가하여 사용할 스플라이스를':

<! - begin 스니핏: js 숨기십시오: 거짓값 콘솔: 진정한 바벨. &gt 거짓값 -;

var arr = [23, 45, 12, 67];
arr.splice(0, 0, 34)
console.log(arr);

끝 - &lt 스니핏 >;!

해설 (5)

'누름식 ()' 는 새 요소를 끝을 어레이입니다. '팝 ()' 에서 요소를 어레이에서는 절감뿐만 말.

'unshift ()' 는 새 요소점 부분에 어레이에서는. 'shift ()' 처음부터 어레이에서는 요소를 제거합니다.

시라이지운시프트 (응답) '' 사용

해설 (0)

<! - begin 스니핏: js 숨기십시오: 거짓값 콘솔: 진정한 바벨. &gt 거짓값 -;

var testdata = new Array();
testdata = [23, 45, 12, 67];
testdata = [34, ...testdata]; 
console.log(testdata)

<! - 언어: &gt html 로 -;

끝 - &lt 스니핏 >;!

해설 (1)

변형 없이

실제로 '/' 모든 ',' / '팝' 변형 '와' shift+ctrl unshift 누름식 the origin 어레이입니다.

Unshift '/' 이 '에서' 와 '항목을 추가하는 누름식 있을경우에 어레이입니다 시작 / 종료 / /' 팝 'shift' 항목을 제거하시겠습니까 처음부터 끝을 어레이입니다.

그러나 항목을 추가할 방법이 없는 어레이에서는 돌연변이. 그 결과 사용할 수 있는 새로운 어레이이며 마지막에 추가 어레이입니다 아래 코드:

const originArray = ['one', 'two', 'three'];
const newItem = 4;
const newArray = originArray.concat(newItem);

아래 코드를 사용하여 추가할 정품 어레이입니다 시작합니다.

const originArray = ['one', 'two', 'three'];
const newItem = 0;
const newArray = (originArray.reverse().concat(newItem)).reverse();

위의 방법으로 추가합니까 함께 시작 / 끝 없이 어레이에서는 돌연변이.

해설 (2)
var array = [23, 45, 12, 67];  
array.unshift(11);  
alert(array);
해설 (1)

계속 할 경우 삽입하려면 요소점 시작할 때, 그 뒤를 이어 '빠르다' 누름식 어레이에서는 사용할 수 있는 ',' 대신 '역동기화 제표를 호출하십시오 호출하십시오 unshift' all the time.

해설 (1)

우리는 '에서 요소를 사용하여 스플라이스를 삽입하려면 어레이에서는 베그닝:

"'js 아르나미.스플리스 (0, 0, & # 39 newName1& # 39;; ); "'

해설 (0)

Es6 사용하여 데스트루스튜링: (만약 오프하도록 피하는 원래 array)

const 뉴어 = [항목을 자오두아르] ''

해설 (0)