Mẹo lập trình Javascript: So sánh câu lệnh const, let và var

By JoeVu, at: 18:33 Ngày 25 tháng 11 năm 2023

Thời gian đọc ước tính: __READING_TIME__ minutes

Javascript Tips: compare const and let and var statements
Javascript Tips: compare const and let and var statements

Trong JavaScript, let, const, và var được sử dụng để khai báo biến, nhưng chúng có một số khác biệt về phạm vi, hoisting và khả năng thay đổi.

 

  1. var (Khai báo biến):
     

    • Các biến được khai báo bằng varphạm vi hàm, nghĩa là phạm vi của chúng bị giới hạn trong hàm mà chúng được định nghĩa.
       
    • Các biến var được hoisting lên đầu phạm vi của chúng trong giai đoạn thực thi, điều này có nghĩa là bạn có thể sử dụng biến trước khi nó được khai báo trong mã.
       
    • Các biến var có thể được khai báo lại và gán lại.
       
    function variable_declaration() {
      var x = 10;
      if (true) {
        var x = 20; // Cùng một biến như trên, không phải là một biến mới
        console.log(x); // Xuất ra 20
      }
      console.log(x); // Xuất ra 20, không phải 10
    }

  2. let (Khai báo phạm vi khối):
     

    • Các biến được khai báo bằng letphạm vi khối, nghĩa là phạm vi của chúng bị giới hạn trong khối (một cặp dấu ngoặc nhọn) mà chúng được định nghĩa.
       
    • Các biến let cũng được hoisting, nhưng chúng không được khởi tạo cho đến khi trình thông dịch đến khai báo của chúng trong mã.
       
    • Các biến let có thể được gán lại, nhưng không thể khai báo lại trong cùng một phạm vi.
       
    function variable_declaration() {
      let x = 10;
      if (true) {
        let x = 20; // Biến khác với biến bên ngoài khối
        console.log(x); // Xuất ra 20
      }
      console.log(x); // Xuất ra 10, không bị ảnh hưởng bởi khối bên trong
    }

  3. const (Khai báo hằng số):
     

    • Các biến được khai báo bằng const có phạm vi khối giống như let.
       
    • Các biến const phải được gán một giá trị khi được khai báo, và giá trị đó không thể được thay đổi hoặc gán lại.
       
    • Giống như let, các biến const không được hoisting cho đến khi khai báo của chúng.
       
    function variable_declaration() {
      const x = 10;
      // x = 20; // Điều này sẽ dẫn đến lỗi, vì các biến const không thể được gán lại
      console.log(x); // Xuất ra 10
    }

 

Nhìn chung, tốt nhất nên sử dụng const theo mặc định và chỉ sử dụng let khi bạn biết giá trị của biến sẽ thay đổi. var được sử dụng ít thường xuyên hơn trong JavaScript hiện đại do hành vi phạm vi hàm và những điểm kỳ lạ của hoisting. Sử dụng constlet có thể giúp ngăn ngừa việc gán lại không mong muốn và cải thiện tính rõ ràng của mã.

Tag list:
- js
- let
- variable declaration
- variable declaration differences
- javascript
- const
- var

Theo dõi

Theo dõi bản tin của chúng tôi và không bao giờ bỏ lỡ những tin tức mới nhất.