Javascript: Bối cảnh thực thi

Jan 23 2023
Trong khi mã chúng tôi viết đang chạy, có các quy trình trong nền mà chúng tôi không nhìn thấy. Khi công cụ Javascript đọc và thực thi mã, nó sẽ thực hiện theo 2 giai đoạn.

Trong khi mã chúng tôi viết đang chạy, có các quy trình trong nền mà chúng tôi không nhìn thấy. Khi công cụ Javascript đọc và thực thi mã, nó sẽ thực hiện theo 2 giai đoạn. Quá trình chung này, được gọi là bối cảnh thực thi , có 2 giai đoạn, như chúng tôi đã đề cập là giai đoạn tạo và giai đoạn thực thi .

Trong giai đoạn đầu tiên, được gọi là giai đoạn tạo , công cụ JS thực hiện một số loại công việc chuẩn bị và làm quen với mã. Tạo Context, phân bổ bộ nhớ để lưu trữ các biến và chức năng. Trong giai đoạn tiếp theo, đó là giai đoạn thực thi điện tử , công cụ JS gán các giá trị mà chúng ta đã đề cập cho các biến mà nó đã quen thuộc và gọi các hàm.

Chúng ta có thể so sánh nó với việc chuẩn bị một loại thức ăn. Chúng ta phải biết ngay từ đầu những phụ kiện nào cần thiết cho món ăn mà chúng ta sẽ chuẩn bị (Giai đoạn sáng tạo).

giai đoạn sáng tạo

Sau đó, chúng tôi xác định số lượng nguồn cung cấp và bắt đầu hành động chuẩn bị thức ăn (Giai đoạn thực hiện).

Giai đoạn thực hiện

Khi mã được thực thi lần đầu tiên, bối cảnh thực thi toàn cục sẽ được tạo trước tiên và các giai đoạn được đề cập sẽ được thực thi. Sau đó, nếu các chức năng tồn tại và được gọi, bối cảnh thực thi chức năng được tạo và cả hai giai đoạn được thực thi.

Thực tế chúng ta có thể thấy tất cả điều này với mã bên dưới.

  1. Khi mã này được đọc bởi công cụ, bối cảnh chung sẽ được tạo trước .
  2. Bối cảnh thực thi toàn cầu

2. Trong trường hợp bạn nhận thấy, không có gì được thực hiện với biến tech trong hàm getTechStack . Điều này là do biến nằm trong hàm getTechStack . Sau khi chức năng này được gọi như trong dòng 9, một bối cảnh chức năng mới sẽ được tạo và 2 giai đoạn sẽ được thực hiện lại trong bối cảnh này. Chỉ khi đó, biến công nghệ mới được xử lý như bất kỳ biến nào khác.

Bối cảnh thực thi chức năng

Khác với global context , đối tượng toàn cục trong functional context sẽ tương đương với đối tượng đối số , tham chiếu đến các tham số của hàm.

Vì vậy, mỗi khi một chức năng được gọi ngoài ngữ cảnh chung, một ngữ cảnh mới sẽ được tạo và quy trình tương tự sẽ được lặp lại.

Cảm ơn bạn đã đọc. :)

Chủ đề khác: