JavaScript Const
- Önceki Sayfa JS Let
- Sonraki Sayfa JS Operatörleri
ECMAScript 2015
ES2015 introduced two important new JavaScript keywords:let
and const
.
Yoluyla const
defined let
Variables defined are similar to
Örnek
const PI = 3.141592653589793; PI = 3.14; // This will cause an error PI = PI + 10; // This will also cause an error
block scope
inblock scopeused inside const
The declared variable is similar to let
Variables are similar.
In this example, x is declared in the block, different from x declared outside the block:
Örnek
var x = 10; // Here, x is 10 { const x = 6; // Here, x is 6 } // Here, x is 10
You can see in the previous chapter JavaScript Let Learn more about block scope in middle school.
at the time of declaration
JavaScript const
Variables must be assigned a value at the time of declaration:
Incorrect
const PI; PI = 3.14159265359;
Correct
const PI = 3.14159265359;
Not a true constant
Keyword const
It is somewhat misleading.
It does not define a constant value. It defines a constant reference to a value.
Therefore, we cannot change the original value of a constant, but we can change the properties of the constant object.
Original value
If we assign an original value to a constant, we cannot change the original value:
Örnek
const PI = 3.141592653589793; PI = 3.14; // This will cause an error PI = PI + 10; // This will also cause an error
Constant objects can be changed
You can change the properties of a constant object:
Örnek
// You can create const objects: const car = {type:"porsche", model:"911", color:"Black"}; // You can change properties: car.color = "White"; // Ekleyebilirsiniz: car.owner = "Bill";
Ancak sınırlı bir şekilde, sabit nesneye yeniden atama yapamazsınız:
Örnek
const car = {type:"porsche", model:"911", color:"Black"}; car = {type:"Volvo", model:"XC60", color:"White"}; // HATA
Sabit dizi değiştirilebilir
Sabit dizi öğelerini değiştirebilirsiniz:
Örnek
// Sabit dizi oluşturabilirsiniz: const cars = ["Audi", "BMW", "porsche"]; // Değiştirebilirsiniz: cars[0] = "Honda"; // Ekleyebilirsiniz: cars.push("Volvo");
Ancak sınırlı bir şekilde, sabit diziye yeniden atama yapamazsınız:
Örnek
const cars = ["Audi", "BMW", "porsche"]; cars = ["Honda", "Toyota", "Volvo"]; // HATA
Tarayıcı desteği
Internet Explorer 10 veya daha eski sürümler desteklememektedir const
Anahtar kelime.
Aşağıdaki tablo, ilk tamamen const anahtar kelimesini destekleyen tarayıcı sürümlerini tanımlar:
Chrome 49 | IE / Edge 11 | Firefox 36 | Safari 10 | Opera 36 |
2016 Mart | 2013 Ekim | 2015 Şubat | 2016 Eylül | 2016 Mart |
yeniden tanımlama
Programın her yerinde JavaScript yeniden tanımlama izin verilir var
değişken:
Örnek
var x = 2; // İzinsiz var x = 3; // İzinsiz x = 4; // İzinsiz
Aynı etki alanı veya blokta, mevcut var
veya let
değişken yeniden tanımlama veya yeniden atama: const
:
Örnek
var x = 2; // İzinsiz const x = 2; // İzinsiz { let x = 2; // İzinsiz const x = 2; // İzinsiz }
Aynı etki alanı veya blokta, mevcut const değişkeni yeniden tanımlamak veya atamak izinsizdir:
Örnek
const x = 2; // İzin verilir const x = 3; // İzinsiz x = 3; // İzinsiz var x = 3; // İzinsiz let x = 3; // İzinsiz { const x = 2; // İzin verilir const x = 3; // İzin verilmez x = 3; // İzin verilmez var x = 3; // İzin verilmez let x = 3; // İzin verilmez }
Başka bir etki alanı veya blokta yeniden tanımlanır const
İzin verilir:
Örnek
const x = 2; // İzin verilir { const x = 3; // İzin verilir } { const x = 4; // İzin verilir }
Yükseltme
Yoluyla var
Tanımlanan değişkenlerYükseltmeEn üst düzeye yükseltme (Hoisting) nedir bilmiyorsanız, bu bölümü öğrenin.
var değişkenlerini tanımlamadan önce kullanabilirsiniz:
Örnek
carName = "Volvo"; // Burada carName kullanabilirsiniz var carName;
Yoluyla const
Tanımlanan değişkenler, en üst düzeye yükseltilemez.
const
Değişkenler, tanımlanmadan önce kullanılamaz:
Örnek
carName = "Volvo"; // Burada carName kullanamazsınız const carName = "Volvo";
- Önceki Sayfa JS Let
- Sonraki Sayfa JS Operatörleri