JavaScript “Lägg till i array” -funktioner (push vs unshift vs others)

Det finns flera metoder för att lägga till nya element i en JavaScript-array. Om du istället vill ta bort element från en matris i JavaScript, har vi en artikel för det också.


Klicka gärna på länkarna nedan för att gå vidare till förklaringen av varje metod:

  1. Använd push () för att lägga till i slutet av en matris
  2. Använd unshift () för att lägga till början av en matris
  3. Använd splice () för att lägga till element i en matris
  4. Använda concat () för att kombinera och skapa nya, längre matriser
  5. Använd indexnotation för att ange ett index där ett element ska läggas till

Låt oss nu diskutera hur och när vi ska utföra vart och ett av dessa kommandon.

Lägg till i slutet av en matris med push ()

Metoden push () lägger till ett element i slutet av en matris, medan dess tvåfunktion, metoden pop (), tar bort ett element från slutet av arrayen.

För att lägga till ett element i slutet av en matris med hjälp av push (), gör du det här:

1
2
3
var lista = [“foo”, “bar”];

list.push (“baz”);

[“foo”, “bar”, “baz”] // resultat

Du kan också lägga till flera element i en matris med hjälp av push (), som visas nedan:

1
2
3
var lista = [“foo”, “bar”];

list.push (“baz”, “qux”, “etc”);

[“foo”, “bar”, “baz”, “qux”, “etc”] // resultat

Om du behöver lägga till ett element eller flera element i slutet av en matris, är push-metoden nästan alltid ditt enklaste och snabbaste alternativ.

Lägg till i början av en matris med unshift ()

Metoden unshift () lägger till ett element i början av en matris, medan dess tvillingfunktion, shift (), tar bort ett element från början av arrayen.

För att lägga till ett element i början av en matris med unshift (), prova detta:

1
2
3
var lista = [“foo”, “bar”];

list.unshift (“baz”);

[“baz”, “foo”, “bar”] // resultat

För att lägga till flera element i början av en matris med unshift (), prova detta:

1
2
3
var lista = [“foo”, “bar”];

list.unshift (“baz”, “qux”);

[“baz”, “qux”, “foo”, “bar”] // resultat

Om du behöver lägga till element i början av en matris är metoden unshift () nästan alltid ditt enklaste och snabbaste alternativ.

Lägg till element i mitten av en matris med skiva ()

Metoden splice () modifierar innehållet i en matris genom att ta bort befintliga element och / eller lägga till nya element.

Nedan hittar du rätt syntax för splice ():

1array.splice (start, deleteCount [, item1 [, item2 [, …]]])

Om du vill infoga ett element (eller element) i en viss punkt någonstans i matrisen, förutom början eller slutet, bör du troligen använda metoden splice ().

För att använda splice () ska din kod se ut så här:

1
2
3
4
var lista = [“foo”, “bar”];

list.splice (1, 0, “baz”); // vid indexposition 1, ta bort 0 element och lägg sedan till “baz” till den positionen

// element “bar” flyttas nu automatiskt till indexposition 2

[“foo”, “baz”, “bar”] // resultat

För att lägga till flera element i mitten av en matris med splice (), prova detta:

1
2
3
var lista = [“foo”, “bar”];

list.splice (1, 0, “baz”, “qux”);

[“foo”, “baz”, “qux”, “bar”] // resultat

Spaltkommandot är som den schweiziska armékniven av manipulering av array; dock bör du först prova att använda de mycket enklare push- eller unshift-kommandona innan du använder splice () för att lägga till i en matris.

Lägg till i en matris genom att skapa en ny matris med hjälp av concat ()

Metoden concat () returnerar en ny kombinerad matris som består av den matris som den heter, förenad med arrayen (eller matriserna) från dess argument.

Så här lägger du till några element till en annan grupp med concat ():

1
2
3
var lista = [“foo”, “bar”];

var newlist = list.concat ([“baz”, “qux”]);

[“foo”, “bar”, “baz”, “qux”] // nylistningsresultat

Det är också möjligt att direkt lägga till icke-matrisvärden med hjälp av concat ():

1
2
3
var lista = [“foo”, “bar”];

var newlist = list.concat ( “baz”, “qux” );

[“foo”, “bar”, “baz”, “qux”] // nylistningsresultat

Metoden concat () är en enkel lösning i situationer där du behöver kombinera några matriser tillsammans, utan att uppblåsa din kod med för slingor eller andra iterativa slingor.

Lägg till ett arrayelement på ett särskilt index med indexnotation

Vi kan också direkt manipulera matrisen, utan att använda några matrismetoder, genom att hänvisa till indexpositionen i matrisen.

Här lägger vi till två nya element på specificerade positioner:

1
2
3
4
var lista = [“foo”, “bar”];

lista [2] = “baz”; // lägg till element “baz” till indexposition 2 i arrayen

lista [3] = “qux”;

[“foo”, “bar”, “baz”, “qux”] // resultat

Här lägger vi till ett element i slutet av matrisen:

1
2
3
var lista = [“foo”, “bar”];

list [list.length] = “baz”; // lägg till element “baz” till slutet av matrisen

[“foo”, “bar”, “baz”] // resultat

Indexnotationsmetoden är ofta användbar när du vet exakt var du ska placera ett element i matrisen, oavsett var den positionen kan vara. Denna situation gäller ofta för många slags algoritmimplementeringar.

Slutord om att lägga till en matris i JavaScript

Att lägga till ett element i en matris i JavaScript är ganska enkelt, som det borde vara, men ingen enda metod är alltid den bästa att använda. Förhoppningsvis kan du nu känna dig säker på när du ska använda ett visst array-expanderande tillvägagångssätt i olika kodförhållanden. Som alltid, om du har ytterligare frågor, kommentarer, tillägg eller subtraktioner, ge oss en heads up nedan.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Adblock
    detector