Hoisting trong javascript là gì? Ví dụ về Hoisting javascript?

1. Hoisting javascript là gì?

Hoisting là hành vi mặc định của JavaScript về việc di chuyển các khai báo lên đầu để compiled hay thực thi code của bạn. Cụ thể khi một file javascript compiled bởi browser, nhưng trước khi nó thực sự executed thì Function declaration sẽ được stored in memory và được đẩy lên nhưng chính xác ta vẫn nhìn nó vẫn ở vị trí cũ. Và khi javascript file thực sự run thì browser thực sự đã biết những function đó trước khi đọc code của file javascript.

2. Ví dụ về Hoisting javascript?

Ví dụ, nếu bạn khai báo một biến trong một hàm như sau:

function example() { console.log(myVariable); var myVariable = 10; } example();

Thì bộ máy thực thi sẽ hiểu như sau:

function example() {
var myVariable;
console.log(myVariable);
myVariable = 10;
}

example();

Do đó, giá trị của biến myVariable sẽ là undefined thay vì bị lỗi ReferenceError.

Tuy nhiên, hoisting chỉ áp dụng với các biến được khai báo bằng var, letconst trong phạm vi của một function hoặc một block scope. Các biến được khai báo bằng var sẽ được hoisted lên đầu phạm vi của function, còn các biến được khai báo bằng letconst sẽ không được hoisted và sẽ bị lỗi ReferenceError nếu truy cập trước khi được khai báo.

>> Hosting js là gì? Tìm hiểu hosting JS

Related Posts

Lỗi Service Host Sysmain 100 Disk Là Gì? Và Cách Fix

1. Lỗi Service Host Sysmain 100 Disk Là Gì? Lỗi “Service Host: SysMain 100% Disk” xảy ra khi dịch vụ SysMain (trước đây gọi là Superfetch) sử…

Lỗi Nginx empty error log là gì? Cách fix lỗi

1. Lỗi Nginx Empty Error Log là gì? Lỗi Nginx Empty Error Log là tình trạng lỗi  mà trong đó file nhật ký lỗi của Nginx (error…

Xử lý lỗi “The Media is Write Protected”

1. Lỗi The Media is Write Protected là gì? Lỗi “The media is write protected” có nghĩa là phương tiện lưu trữ bạn đang cố gắng ghi…

Cách xử lý lỗi invalid host header?

1. Lỗi invalid host header là gì? Lỗi “invalid host header” là một thông báo từ máy chủ web (hosting) khi không nhận dạng hoặc không chấp…

Express js là gì?

1. Express js là gì? Express.js là một khung ứng dụng web mã nguồn mở và miễn phí dành cho Node.js. Nó được sử dụng để thiết…

Khắc phục lỗi destination host unreachable?

1. Lỗi destination host unreachable là gì? “Lỗi destination host unreachable” là một thông báo lỗi mà bạn có thể nhận được khi bạn cố gắng kết…

Leave a Reply

Your email address will not be published. Required fields are marked *