Sự khác biệt giữa LET và VAR trong vòng lặp for trong JavaScript là gì?

JavaScript là ngôn ngữ kịch bản khai báo các biến của nó theo các loại khác nhau bằng cách sử dụng các từ khóa như let, const hoặc var. let và const có cùng đặc điểm về phạm vi từ vựng. Phạm vi từ vựng được định nghĩa là khả năng hiển thị của các giá trị của biến trên khối được xác định hoặc được bao quanh, chứa các giá trị hợp lệ và có thể được truy cập

Gói phát triển phần mềm tất cả trong một(hơn 600 khóa học, hơn 50 dự án)

Giá
Xem khóa học

600+ Khóa học trực tuyến. hơn 50 dự án. Hơn 3000 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập Trọn đời
4. 6 (84.464 xếp hạng)

Phạm vi từ vựng JavaScript còn được gọi là Phạm vi tĩnh hoặc Đóng cửa, đây là một khái niệm mạnh mẽ. Trong JavaScript, var không có phạm vi khối; . Khai báo 'var' được xử lý khi bắt đầu thực thi chức năng. Điều này tương tự như khái niệm gọi là Nâng (lên đỉnh) của chức năng

Bắt đầu khóa học phát triển phần mềm miễn phí của bạn

Phát triển web, ngôn ngữ lập trình, kiểm thử phần mềm và những thứ khác

Câu lệnh 'let' được giới thiệu trong tiêu chuẩn ECMAScript phiên bản 6, thường được gọi là ES6 hoặc ES 2015. ECMAScript là tổ chức duy trì các phiên bản toàn cầu tiêu chuẩn của JavaScript để duy trì khả năng thích ứng của nó trên tất cả các trình duyệt web và môi trường của nó để làm cho tất cả những người khổng lồ internet lớn đều phù hợp

Trong JavaScript, giả sử một biến được khai báo trong vòng lặp for() có điều kiện, thì nó có sẵn ở dạng toàn cục và bên ngoài vòng lặp này, trong khi đó, let sẽ không cho phép điều này và hạn chế biến đã khai báo let chỉ được truy cập bên trong vòng lặp for. Khai báo lại biến sử dụng let gây ra lỗi cú pháp trong quá trình biên dịch

So sánh trực tiếp giữa JavaScript Var và Let (Infographics)

Dưới đây là 8 so sánh hàng đầu giữa JavaScript Var và Let

Sự khác biệt chính giữa JavaScript Var vs Let

Hãy để chúng tôi thảo luận về một số khác biệt chính giữa JavaScript Var và Let

  1. Một biến là tên của bộ lưu trữ cho một giá trị được gán để xác định vị trí của nó. Trong JavaScript, một biến có thể được khai báo bằng let hoặc var. Phạm vi khai báo 'var' là toàn cầu bất kể phạm vi hoặc vị trí đã khai báo của nó, trong khi biến được khai báo bằng câu lệnh let là phạm vi khối hoặc phạm vi kèm theo
  2. Trong hầu hết các mã phiên bản cũ hơn, có thể tìm thấy var cho hầu hết các biến được khai báo trong hầu hết các mã JavaScript. 'var' nâng giá trị biến lên toàn bộ phạm vi, trong khi câu lệnh let sẽ không nâng giá trị
  3. Khai báo 'var' đã có từ đầu JavaScript và câu lệnh let gần đây đã được giới thiệu trong phiên bản JavaScript ES6 (ES 2015) để thực thi các chức năng phạm vi khối
  4. 'var' được khai báo ở bất kỳ mức phạm vi nào trở thành toàn cầu trong khi phạm vi let là phạm vi khối trong đó một khối có thể được định nghĩa là mã được đặt giữa các dấu ngoặc hoa { }
  5. Các biến được khai báo 'var' trong JavaScript khởi tạo giá trị mặc định của biến thành không xác định sau khi nó được khai báo trong phạm vi, trong khi đó, các biến được khai báo cũng tải giá trị mặc định là không xác định
  6. var không có phạm vi từ vựng; . Nếu câu lệnh let tồn tại bên trong phạm vi khối, thì nó sẽ trở thành phạm vi từ vựng
  7. Trong phạm vi của đối tượng windows, các biến var có thể được sử dụng, trong khi các biến đã khai báo của câu lệnh let không thể được sử dụng trong trường hợp này
  8. Sẽ không an toàn hơn khi sử dụng loại trên các định danh được khai báo bằng câu lệnh let, trường hợp này khác với các biến được khai báo var
  9. Về mặt so sánh hiệu suất, var nhanh hơn và let chậm hơn bên trong các vòng lặp khi chạy hoặc thực thi mã
  10. Việc khai báo lại var đã khai báo một biến trong cùng một chức năng hoặc phạm vi sẽ dẫn đến Lỗi cú pháp trong khi biến đã khai báo let không thể được khai báo lại
  11. Có thể tránh được các lỗi và sự nhầm lẫn của việc ghi đè giá trị bên trong phạm vi bằng cách sử dụng biến đã khai báo let và được khuyến nghị sử dụng bất cứ khi nào có thể chứ không phải trong mọi trường hợp
  12. Trong JavaScript, một biến sử dụng var có thể được khai báo là var a = 1; . cho a = 1;
  13. Tên của các biến được khai báo có một số hạn chế cần tuân thủ trước khi khai báo, chẳng hạn như tên của nó chỉ được bắt đầu bằng các chữ cái, chữ số, dấu $ hoặc dấu _. Các câu lệnh var và let trong javascript cũng không được dùng làm tên của các định danh khi khai báo biến

Bảng so sánh giữa JavaScript Var và Let

Sau đây là bảng so sánh giữa JavaScript Var và Let

Cơ sở so sánh JavaScript VarLetDefinitionVar là phương thức khai báo cũ của biếnLet là hình thức khai báo biến được giới thiệu gần đây Cách sử dụng Chủ yếu được sử dụng để khai báo các biến trong các chương trình JavaScript Giống như var nhưng cung cấp chức năng bổ sung để thực thi khả năng truy cập phạm vi khốiKhai báoCó thể khai báo ở bất kỳ đâu và biến được nâng lênCó thể được . let không cho phép khai báo lại cùng một biến.

Phần kết luận

Việc sử dụng var trong JavaScript có rất nhiều lỗi trong quá trình thực thi mã. Phạm vi toàn cầu của khai báo var làm giảm việc sử dụng cùng một mã định danh trên các vị trí khác nhau trong cùng một lớp hoặc tệp. Điều này làm giảm khả năng sử dụng lại của mã. Việc khai báo một biến bằng cách sử dụng var hoạt động tương tự như khai báo của let nhưng với sự khác biệt duy nhất về phạm vi từ vựng trong mã

Việc khai báo một biến bằng cách sử dụng 'let' khiến biến đó được truy cập trong phạm vi kèm theo dẫn đến mã định danh được khai báo và sử dụng lại bên ngoài phạm vi biểu thức hoặc câu lệnh bị chặn. Không thể thay thế Var bằng let vì nó có cách sử dụng riêng trên các phạm vi khác nhau. Let chỉ nên được sử dụng khi phạm vi khối có tầm quan trọng hàng đầu và không cần cẩu trong phạm vi thực thi

Bài viết được đề xuất

Đây là hướng dẫn về sự khác biệt hàng đầu giữa JavaScript Var và Let. Ở đây chúng tôi thảo luận về sự khác biệt chính giữa JavaScript Var và Let với đồ họa thông tin và bảng so sánh. Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm –

Tại sao var không được sử dụng trong vòng lặp for trong Javascript?

Các biến được khai báo với var không cục bộ trong vòng lặp, i. e. chúng có cùng phạm vi mà vòng lặp for nằm trong . Các biến được khai báo với let là cục bộ của câu lệnh. Kết quả của biểu thức này bị loại bỏ. Một biểu thức được đánh giá trước mỗi lần lặp vòng lặp.

Sự khác biệt giữa VAR và let là gì?

let cho phép bạn khai báo các biến bị giới hạn trong phạm vi của câu lệnh khối hoặc biểu thức mà nó được sử dụng, không giống như từ khóa var, khai báo biến toàn cục hoặc cục bộ cho toàn bộ hàm bất kể phạm vi khối

Sử dụng VAR tốt hơn hay để yên?

Điều này là do cả hai phiên bản được coi là các biến khác nhau vì chúng có phạm vi khác nhau. Thực tế này khiến let có sự lựa chọn tốt hơn var . Khi sử dụng let , bạn không cần phải bận tâm nếu trước đó bạn đã sử dụng tên cho biến vì biến chỉ tồn tại trong phạm vi của nó.

Chúng ta có thể sử dụng vòng lặp let in for không?

Theo MDN sử dụng let trong vòng lặp for như vậy sẽ liên kết biến trong phạm vi phần thân của vòng lặp.

Chủ đề