ES6中的常量解釋
對於開發者或程式設計師來說,除錯是一個非常繁瑣的過程,一個小錯誤可能導致重大問題,例如更改單個變數就會改變整個程式碼,並且很難檢測到。有時,有些變數在整個程式碼中不會改變,如果使用者錯誤地更改或更新了它們的值,那麼他們首先不會想到這些變數的值可能發生了變化。
為了克服這些問題,ES6中定義了一個概念:如果使用者知道某個變數在整個程式中不會改變(例如π的值),那麼可以將其賦值為常量值,並且在定義其值之後,沒有人可以更改或更新它們。
const
關鍵字表示常量,使用者可以透過它來保持變數不變,如果它們被錯誤地更新,則會產生錯誤,從而簡化除錯過程。
Const的語法
宣告變數常量的語法如下:
const const_name = value;
在上述語法中,const
是ES6中定義的關鍵字,const_name
是常量識別符號的名稱,value
是const_name
包含的值,在程式碼中不會改變。
Const的屬性
前面我們已經看到了const
的語法,讓我們看看在ES6中宣告變數常量的一些基本屬性:
使用ES6中的
const
關鍵字宣告的變數變得不可變。使用
const
關鍵字定義的變數的作用域僅限於其定義的塊,在塊之外它不存在。由於常量變數是常量並且不能取任何新值,因此在宣告時就提供其值是合乎邏輯的,否則會丟擲錯誤。
常量意味著保持不變,這直接說明了宣告為常量的變數不能重新賦值。
常量變數在宣告之前遵循與普通變數相同的屬性,它們不能……
這些是一些常見的const
變數屬性,在使用它們之前應該學習。
現在讓我們轉到示例部分,並透過各種示例檢視const
關鍵字的工作方式。
示例1
在這個例子中,我們將使用const
關鍵字宣告一個變數為常量,然後稍後我們將嘗試使用console.log()
方法列印它。
variable1 = 5 const variable2 = 10 console.log("The value of varaible1 is: " + variable1) console.log("The value of varaible2 is: " + variable2)
在上面的程式碼中,我們聲明瞭兩個變數,一個是普通的,另一個是用const
關鍵字宣告的,我們可以看到使用console.log()
方法列印它們時沒有區別。
示例2
在這個例子中,我們將使用const
關鍵字宣告一個變數為常量,然後稍後我們將嘗試更改其值。
const variable = 10 // declaration of variable variable = 15 // updating its value // printing the value of the variable console.log("Value of variable is: " + variable)
在上面的程式碼中,我們聲明瞭該變數,當我們嘗試更新其值時,我們得到了一個表示“Assignment to constant variable”(賦值給常量變數)的錯誤。
將陣列和函式宣告為常量
到目前為止,我們已經看到了如何將變數宣告為常量,現在讓我們來看一下如何使用const
關鍵字將陣列和函式宣告為常量。
將陣列宣告為const的語法
const array_name = [elements of array]
在上面的語法中,我們使用const
關鍵字將陣列宣告為常量。
示例 - 在此示例中,我們將陣列宣告為常量,然後我們將嘗試列印陣列的所有值。
// declaring array as constant const array_name = ['first', 'second', 'third']; // printing the values of the array console.log(array_name)
將函式宣告為常量的語法
由於函式在javascript中也是物件,這意味著它也可以使用const
關鍵字宣告為常量。
語法
const funciton_name { // body of function }
示例 - 讓我們來看一個如何將函式宣告為常量的例子:
// declaration a function as constant const function_name = function () { const variable = 5; // declaring a variable inside it return variable; } console.log(function_name())
示例 - 請看下面的另一個例子:
// declaration a function as constant const function_name = function () { const variable = 5; // declaring a variable inside it try { // The below line will throw an error variable = 9; } catch (error) { console.log(error); } } function_name()
在上面的程式碼中,首先,我們使用const
關鍵字將一個函式宣告為常量。然後在函式內部,我們聲明瞭一個常量變數,我們稍後將在try
塊內更新它。由於該變數是常量,因此它會丟擲一個錯誤,我們將使用catch
方法列印該錯誤。
結論
在本文中,我們瞭解到,對於開發者或程式設計師來說,除錯是一個非常繁瑣的過程,一個小錯誤可能導致重大問題,例如更改單個變數就會改變整個程式碼,並且很難檢測到。const
關鍵字表示常量,使用者可以透過它來保持變數不變,如果它們被錯誤地更新,則會產生錯誤,從而簡化除錯過程。我們可以將陣列、函式、物件等宣告為常量。