Const tablic JavaScript

ECMAScript 2015 (ES6)

W 2015 roku JavaScript wprowadził ważny nowy klucz:const.

używając const Deklarowanie tablic stałych stało się powszechną praktyką:

Przykład

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

Spróbuj sam!

Nie można przypisać ponownie

używając const Tablica deklarowana nie może być przypisana ponownie:

Przykład

const cars = ["Saab", "Volvo", "BMW"];
cars = ["Toyota", "Volvo", "Audi"];    // BŁĄD

Spróbuj sam!

Tablica nie jest stała

Klucz const Ma pewien pułapkę.

Nie definiuje stałej tablicy. Definiuje stałą referencję do tablicy.

Zatem, nadal możemy zmieniać elementy stałej tablicy.

Elementy można przypisać ponownie

Możesz zmienić elementy stałej tablicy:

Przykład

// Możesz utworzyć stałą tablicę:
const cars = ["Saab", "Volvo", "BMW"];
// Możesz zmienić element:
cars[0] = "Toyota";
// Możesz dodać element:
cars.push("Audi");

Spróbuj sam!

Wspierane przeglądarki

Internet Explorer 10 或更早的版本不支持 const Internet Explorer 10 lub wcześniejsze wersje nie wspierają

klucz.

Poniższa tabela podaje pierwszą wersję przeglądarki wspierającą klucz "const": Chrome IE Firefox Safari
Opera Chrome 49 IE 11 / Edge Firefox 36 Safari 10
2016 rok 9 miesiąc Opera 36 2013 rok 10 miesiąc 2015 rok 2 miesiąc 2016 rok 9 miesiąc

2016 rok 3 miesiąc

inicjalizacja w momencie deklarowania const JavaScript

Oznacza to, że zmienna musi być przypisana w momencie deklarowania: const Deklarowane tablice muszą być inicjalizowane w momencie deklarowania.

używając const a pomijanie inicjalizacji tablicy jest błędem składniowym:

Przykład

Nie działa:

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

używając var Deklarowane tablice mogą być inicjalizowane w dowolnym momencie.

Możesz nawet używać tej tablicy przed jej deklarowaniem:

Przykład

W porządku:

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

Spróbuj sam!

dziedzina blokowa const

używając const Deklarowane tablice majądziedzina blokowa.

Różnią się tablice deklarowane w bloku od tablic deklarowanych poza blokiem:

Przykład

const cars = ["Saab", "Volvo", "BMW"];
// tutaj cars[0] to "Saab"
{
  const cars = ["Toyota", "Volvo", "BMW"];
  // tutaj cars[0] to "Toyota"
}
// tutaj cars[0] to "Saab"

Spróbuj sam!

używając var Deklarowane tablice nie mają dziedziny blokowej:

Przykład

var cars = ["Saab", "Volvo", "BMW"];
// tutaj cars[0] to "Saab"
{
  var cars = ["Toyota", "Volvo", "BMW"];
  // tutaj cars[0] to "Toyota"
}
// tutaj cars[0] to "Toyota"

Spróbuj sam!

Więcej na temat dziedziny blokowej znajdziesz w następujących rozdziałach:Zasięg w JavaScript.

ponowne deklarowanie tablicy

w dowolnym miejscu programu dozwolone jest ponowne deklarowanie tablicy var Ponowne deklarowanie tablicy:

Przykład

var cars = ["Volvo", "BMW"];   // Dozwolone
var cars = ["Toyota", "BMW"];  // Dozwolone
cars = ["Volvo", "Saab"];      // Dozwolone

nie dozwolone jest ponowne deklarowanie lub przypisywanie tablicy w tym samym zakresie lub w tym samym bloku const:

Przykład

var cars = ["Volvo", "BMW"];         // Dozwolone
const cars = ["Volvo", "BMW"];       // Nie dozwolone
{
  var cars = ["Volvo", "BMW"];         // Dozwolone
  const cars = ["Volvo", "BMW"];       // Nie dozwolone
}

nie dozwolone jest ponowne deklarowanie lub przypisywanie istniejącej tablicy w tym samym zakresie lub w tym samym bloku const tablica:

Przykład

const cars = ["Volvo", "BMW"];       // Dozwolone
const cars = ["Volvo", "BMW"];       // Nie dozwolone
var cars = ["Volvo", "BMW"];         // Nie dozwolone
cars = ["Volvo", "BMW"];             // Nie dozwolone
{
  const cars = ["Volvo", "BMW"];     // Dozwolone
  const cars = ["Volvo", "BMW"];     // Nie dozwolone
  var cars = ["Volvo", "BMW"];       // Nie dozwolone
  cars = ["Volvo", "BMW"];           // Nie dozwolone
}

Dozwolone jest użycie w innym zakresie lub innym bloku const Ponowne deklarowanie tablicy:

Przykład

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

Pełny podręcznik tablic

Aby uzyskać pełną wersję, odwiedź naszą Podręcznik JavaScript Array.

Ten podręcznik zawiera opisy i przykłady wszystkich właściwości i metod tablic.