Var, Let và Const | How Kteam

Dẫn nhập

Trong bài viết ngày hôm nay, Kteam sẽ ra mắt cho những bạn 3 từ khóa để khai báo biến : Var, Let và Const

Nội dung

Để theo dõi bài này tốt nhất, bạn nên xem qua bài :

  • Sổ tay Javascript
  • ECMAScript là gì?
  • Node.js là gì?
  • Cơ chế bất đồng bộ trong Javascript
  • Node.js hoạt động như thế nào?
  • Promise là gì?
  • Async/Await là gì?

Bài này sẽ giới thiệu những nội dung sau:

Bạn đang đọc: Var, Let và Const | How Kteam

  • Ý nghĩa của các từ khóa khai báo
  • Vì sao không nên dùng Var

Ý nghĩa của các từ khóa khai báo

var: là cách khai báo từ trước đến nay của Javascript, việc khai báo var xem như biến trở thành ông vua. Phạm vi của var xem như phạm vi toàn cục hoặc phạm vi nằm trong 1 function. Ví dụ khi khai báo a phạm vi
toàn cục thì có thể truy cập bất cứ đâu:

function declaration() {
  console.log(a)
}

var a = 10
declaration()

let: là cách khai báo biến chỉ có thể truy cập trong block {} bọc nó, khác với var có thể truy cập xuyên suốt function chứa nó. Ví dụ a trong if và ngoài if vẫn là 2 biến khác nhau:

function declaration() {
  let a = 10
  if (a > 5) {
    let a = 5
    console.log(a)
  }
  console.log(a)
}

declaration()

const: biến khai báo const sẽ thành hằng số, phạm vi truy cập const tương tự let. Ví dụ:

function declaration() {
  const a = 10
  if (a > 5) {
    const a = 5
    console.log(a)
  }
  a = 6
}

declaration()

Lưu ý : nếu biến const là kiểu tài liệu tham chiếu thì giá trị thật bên trong vẫn hoàn toàn có thể biến hóa, trừ khi đổi khác địa chỉ tham chiếu sẽ báo lỗi

const a = []
a.push(1)
a.push(2)
a.push(3)
console.log(a)
a = []

Vì sao không nên dùng Var

Var là cách khai báo của Javascript từ xưa đến giờ, tuy nhiên trong tăng trưởng ứng dụng nó đã sinh ra những yếu tố lớn. Ví dụ :

var greeter = "Hi Kteam";
var flag = true;
if (flag) {
  var greeter = "Hello Kteam";
}
console.log(greeter)

Vì phạm vị truy vấn của var nằm khá lớn, nên trong tăng trưởng ứng dụng có khi ta gặp sai sót như đặt biến trùng tên thì hoàn toàn có thể gặp sự cố đáng tiếc .
Hoặc khi sử dụng callback thì var hoàn toàn có thể gặp 1 số yếu tố như sau :

for (var i = 0; i < 5; i++) {
  setTimeout(function(){
    console.log(i)
  }, 1000)
}

Lúc này, callback sẽ lấy giá trị i ở đầu cuối của i vì đã kết thúc vòng lặp

Để khắc phục được thực trạng, ta sẽ sửa chữa thay thế dùng let, vì mỗi vòng lặp sẽ tạo ra 1 scope khác nhau :

for (let i = 0; i < 5; i++) {
  setTimeout(function(){
    console.log(i)
  }, 1000)
}

let và const được sinh ra từ Javascript ES6 để cải tổ yếu tố quản trị biến, mặc dầu không hủy cách khai báo var nhưng năng lực của 2 tính năng mới giúp tất cả chúng ta không cần phải sử dụng var sau này nữa .

Kết

Như vậy Kteam đã ra mắt về Var, Let và Const

Ở bài tiếp theo, Kteam sẽ giới thiệu cho các bạn
Class trong Javascript

Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của mình để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử thách – Không ngại khó”.

Thảo luận

Nếu bạn có bất kể khó khăn vất vả hay vướng mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI và ĐÁP trên thư viện Howkteam. com để nhận được sự tương hỗ từ hội đồng .