2016-05-12 11 views
8

Jak zaimplementować coś takiego jak Array unshift() metoda, aby utworzyć nową tablicę? Zasadniczo coś takiego jak metoda concat(), ale zamiast umieszczać nowy element na końcu, umieść go na początku.JavaScript Array unshift() w niezmienny sposób

+1

push() dodaje go do końca. concat() może dodać do początku lub końca, w zależności od tego, jak to nazwiesz ... zawsze możesz 'origArr.slice(). doSomethingMutative()' również ... 'old.concat (nowszy)' vs 'nowszy. concat (stary) ' – dandavis

+0

Dziękuję! Sprawdzę to ... EDYCJA: Chciałem zapytać o nieprzewyższenie, przepraszam za to. –

+1

Daleko od głupoty, to przyzwoite pytanie ... – dandavis

Odpowiedz

14

Możesz to zrobić, używając metody .concat, jeśli wywołasz ją na tablicy elementów, które chcesz umieścić na początku nowej tablicy.

Przykład pracy:

var a = [1, 2, 3]; 
 
var b = [0].concat(a); 
 
console.log(a); 
 
console.log(b);

Alternatywnie, w ECMAScript 6 można użyć spread operator.

Przykład robocza (wymaga nowoczesnej przeglądarki):

var a = [1, 2, 3] 
 
var b = [0, ...a]; 
 
console.log(a); 
 
console.log(b);

Powiązane problemy