JavaScript array Const

ECMAScript 2015 (ES6)

I 2015 indførte JavaScript en vigtig ny nøgleord:const.

Brug const Deklarering af arrays er blevet en almindelig praksis:

Eksempel

const biler = ["Saab", "Volvo", "BMW"];

Prøv det selv

Kan ikke ændres værdi

Med const Deklarerede arrays kan ikke ændres værdi:

Eksempel

const biler = ["Saab", "Volvo", "BMW"];
cars = ["Toyota", "Volvo", "Audi"];    // ERROR

Prøv det selv

Array er ikke en konstant

Nøgleord const Meget misvisende.

Det definerer ikke en konstant array. Det definerer en konstant reference til arrayet.

Derfor kan vi stadig ændre elementerne i en konstant array.

Elementer kan ændres værdi

Du kan ændre elementerne i en konstant array:

Eksempel

// Du kan oprette konstante arrays:
const biler = ["Saab", "Volvo", "BMW"];
// Du kan ændre elementer:
cars[0] = "Toyota";
// Du kan tilføje elementer:
cars.push("Audi");

Prøv det selv

Browser supports

Internet Explorer 10 eller tidligere versioner understøtter ikke const Nøgle.

Følgende tabel angiver den første browserversion, der fuldt ud understøtter const-nøglen:

Chrome IE Firefox Safari Opera
Chrome 49 IE 11 / Edge Firefox 36 Safari 10 Opera 36
2016 år 3 måned 2013 år 10 måned 2015 år 2 måned 2016 år 9 måned 2016 år 3 måned

Tildeling ved deklaration

JavaScript const Variabler skal tildelinges værdi ved deklaration:

Det betyder: brug const Dekluderede array skal initialiseres ved deklaration.

Brug const Og ikke at initialisere arrayet er en syntaksfejl:

Eksempel

Fungerer ikke:

const biler;
biler = ["Saab", "Volvo", "BMW"];

Med var Dekluderede array kan til enhver tid initialiseres.

Du kan endda bruge arrayet før deklarationen:

Eksempel

Ingen problemer:

biler = ["Saab", "Volvo", "BMW"];
var biler;

Prøv det selv

const blokomsråde

Med const Dekluderede array harBlokomsråde.

Array deklareret i blok er forskellig fra array deklareret udenfor blok:

Eksempel

const biler = ["Saab", "Volvo", "BMW"];
// Her er cars[0] "Saab"
{
  const biler = ["Toyota", "Volvo", "BMW"];
  // Her er cars[0] "Toyota"
}
// Her er cars[0] "Saab"

Prøv det selv

Med var Deklarerede array har ingen blokomsråde:

Eksempel

var biler = ["Saab", "Volvo", "BMW"];
// Her er cars[0] "Saab"
{
  var biler = ["Toyota", "Volvo", "BMW"];
  // Her er cars[0] "Toyota"
}
// Her er cars[0] "Toyota"

Prøv det selv

Du kan lære mere om blokomsråde i følgende kapitel:JavaScript Område.

omdeklare array

Man kan bruge i ethvert punkt i programmet var Omskriv arrayen:

Eksempel

var biler = ["Volvo", "BMW"];   // Tilladt
var biler = ["Toyota", "BMW"];  // Tilladt
biler = ["Volvo", "Saab"];      // Tilladt

Ikke tilladt at omdeklare eller omtildele array i samme område eller samme blok til const:

Eksempel

var biler = ["Volvo", "BMW"];         // Tilladt
const biler = ["Volvo", "BMW"];       // Ikke tilladt
{
  var biler = ["Volvo", "BMW"];         // Tilladt
  const biler = ["Volvo", "BMW"];       // Ikke tilladt
}

Ikke tilladt at omdeklare eller omtildele eksisterende i samme område eller samme blok const Array:

Eksempel

const cars = ["Volvo", "BMW"];       // Tilladt
const biler = ["Volvo", "BMW"];       // Ikke tilladt
var cars = ["Volvo", "BMW"];         // Ikke tilladt
cars = ["Volvo", "BMW"];             // Ikke tilladt
{
  const cars = ["Volvo", "BMW"];     // Tilladt
  const cars = ["Volvo", "BMW"];     // Ikke tilladt
  var cars = ["Volvo", "BMW"];       // Ikke tilladt
  cars = ["Volvo", "BMW"];           // Ikke tilladt
}

Tilladt at bruge i en anden scope eller i en anden blok const Omskriv arrayen:

Eksempel

const cars = ["Volvo", "BMW"];       // Tilladt
{
  const cars = ["Volvo", "BMW"];     // Tilladt
}
{
  const cars = ["Volvo", "BMW"];     // Tilladt
}

Komplette array referencehåndbog

For fuld reference, besøg vores JavaScript Array referencehåndbog.

Denne håndbog indeholder beskrivelser og eksempler på alle array egenskaber og metoder.