ECMAScript 2015 (ES6) 引進了許多強大的功能,徹底改變了 JavaScript 開發。其中,let、const 和類別對於編寫現代、乾淨、高效的程式碼至關重要。
let 關鍵字用來宣告具有區塊作用域的變數。與 var 不同,let 不允許在同一範圍內重新聲明,並且不會以相同的方式提升。
let variableName = value;
let x = 10; if (true) { let x = 20; // Block scope console.log(x); // 20 } console.log(x); // 10
const 關鍵字用來宣告常數。與 let 一樣,它是區塊作用域的,但不同之處在於它在聲明後不能重新分配。
const variableName = value;
const PI = 3.14159; console.log(PI); // 3.14159 // PI = 3.14; // Error: Assignment to constant variable const numbers = [1, 2, 3]; numbers.push(4); // Allowed console.log(numbers); // [1, 2, 3, 4]
Feature | let | const | var |
---|---|---|---|
Scope | Block | Block | Function |
Hoisting | No | No | Yes |
Redeclaration | Not Allowed | Not Allowed | Allowed |
Reassignment | Allowed | Not Allowed | Allowed |
ES6 引入了類別語法,與傳統原型相比,它是一種更清晰、更直觀的創建物件和處理繼承的方式。
let variableName = value;
let x = 10; if (true) { let x = 20; // Block scope console.log(x); // 20 } console.log(x); // 10
const variableName = value;
const PI = 3.14159; console.log(PI); // 3.14159 // PI = 3.14; // Error: Assignment to constant variable const numbers = [1, 2, 3]; numbers.push(4); // Allowed console.log(numbers); // [1, 2, 3, 4]
class ClassName { constructor(parameters) { // Initialization code } methodName() { // Method code } }
class Person { constructor(name, age) { this.name = name; this.age = age; } greet() { console.log(`Hello, my name is ${this.name} and I am ${this.age} years old.`); } } const person1 = new Person('Alice', 25); person1.greet(); // Hello, my name is Alice and I am 25 years old.
constructor(name) { this.name = name; }
greet() { console.log("Hello"); }
嗨,我是 Abhay Singh Kathayat!
我是一名全端開發人員,擁有前端和後端技術的專業知識。我使用各種程式語言和框架來建立高效、可擴展且用戶友好的應用程式。
請隨時透過我的商務電子郵件與我聯繫:kaashshorts28@gmail.com。
以上是掌握 ESeatures:JavaScript 中的 let、const 和類的詳細內容。更多資訊請關注PHP中文網其他相關文章!