Hãy cùng Thế giới JS tìm hiểu về mọi thứ về let trong JavaScript, Nó là một từ khóa được sử dụng để khai báo các biến trong JavaScript có phạm vi trong khối code. Hai từ khóa mới đã được thêm vào trong phiên bản javascript ES6 hoặc ES2015. Nói chung, chúng ta nên sử dụng từ khóa let khi làm việc với javascript.
Cú pháp:
let variable_name = value;
1.Phạm vi trong khối code:
Các biến được khai báo bên trong khối { } được gọi là biến phạm vi trong khối. các biến được khai báo bởi từ khóa var không thể được đặt trong phạm vi khối.
Ví dụ: Trong ví dụ này, biến num nằm trong phạm vi khối và nó không thể được truy cập bên ngoài khối. Nếu chúng ta cố gắng truy cập biến bên ngoài khối, nó sẽ đưa ra lỗi tham chiếu.
// https://vpsus.vn/ // https://www.facebook.com/groups/893052378563701 // https://twitter.com/thegioijs {let num=10; // calling the function inside block console.log(num) } // calling the function outside block throws a Error console.log(num)
Đầu ra:
10 Uncaught ReferenceError: num is not defined
2.Phạm vi toàn cầu:
Biến phạm vi toàn cầu là một biến được khai báo trong phần chính của mã nguồn, bên ngoài tất cả các hàm.
Ví dụ: Trong ví dụ này, biến num là một biến có phạm vi toàn cầu và nó có thể được truy cập từ bất kỳ đâu trong chương trình.
// https://vpsus.vn/ // https://www.facebook.com/groups/893052378563701 // https://twitter.com/thegioijs let num=12; console.log(num); function fun(){ console.log(num); } fun(); // calling the function
Đầu ra:
12 12
3.Phạm vi trong hàm:
Biến phạm vi trong hàm là một biến được khai báo bên trong một hàm và không thể được truy cập bên ngoài hàm.
Ví dụ: Trong ví dụ này, biến num được khai báo bên trong hàm và không thể truy cập bên ngoài hàm.
// https://vpsus.vn/ // https://www.facebook.com/groups/893052378563701 // https://twitter.com/thegioijs function fun(){ let num=12; console.log(num); } fun(); // calling the function console.log(num);
Đầu ra:
12 "ReferenceError: num is not defined
4.Khai báo lại các biến trong các khối khác nhau:
Các biến được khai báo bằng cách sử dụng let có thể được khai báo lại bên trong các khối khác.
// https://vpsus.vn/ // https://www.facebook.com/groups/893052378563701 // https://twitter.com/thegioijs let x=77; { let x=23; console.log(x); } console.log(x);
Đầu ra:
23 77
5.Khai báo lại các biến trong cùng một khối:
Chúng ta không thể khai báo lại các biến bằng cách sử dụng từ khóa let bên trong cùng một khối. Nó sẽ ném một lỗi.
// https://vpsus.vn/ // https://www.facebook.com/groups/893052378563701 // https://twitter.com/thegioijs let x=77; { let x=23; // legal console.log(x); } let x=67;// illegal console.log(x);
Đầu ra:
Uncaught SyntaxError: Identifier 'x' has already been declared
6.Không hỗ trợ cẩu(Hoisting) :
Hành vi di chuyển các khai báo lên trên tập lệnh được gọi là cẩu(Hoisting). Chúng ta sẽ có 1 bài hiểu về kỹ thuật này(Hoisting) trong bài tiếp theo
x=12; console.log(x); let x;
Đầu ra:
Uncaught ReferenceError: Cannot access 'x' before initialization
Trình duyệt được hỗ trợ:
- Chrome 49 trở lên
- Edge 14 trở lên
- Firefox 44 trở lên
- Opera 17 trở lên
- Internet Explorer 11 trở lên
- Safari 10 trở lên
Tiếp theo, hãy cùng Thế giới JS tìm hiểu thêm các kiến thức về Javascript trong các bài tiếp theo trong series học miễn phí Javascript từ cơ bản tới nâng cao.
Nếu bạn cảm thấy hữu ích và yêu thích Thế giới JS, hãy tham gia và theo dõi chúng tôi để nhận thêm nhiều kiến thức MIỄN PHÍ hơn nữa nhé:
Share to learn more than!