Phạm vi toàn cầu trong javascript là gì?
Phạm vi xác định thời gian tồn tại và khả năng hiển thị của một biến. Các biến không hiển thị bên ngoài phạm vi mà chúng được khai báo Show
JavaScript có phạm vi mô-đun, phạm vi chức năng, phạm vi khối, phạm vi từ vựng và phạm vi toàn cầu Phạm vi toàn cầuCác biến được xác định bên ngoài bất kỳ chức năng, khối hoặc phạm vi mô-đun nào có phạm vi toàn cầu. Các biến trong phạm vi toàn cầu có thể được truy cập từ mọi nơi trong ứng dụng Khi một hệ thống mô-đun được kích hoạt, việc tạo các biến toàn cục sẽ khó hơn, nhưng người ta vẫn có thể làm được. Bằng cách xác định một biến trong HTML, bên ngoài bất kỳ chức năng nào, một biến toàn cục có thể được tạo
Khi không có hệ thống mô-đun, việc tạo các biến toàn cục sẽ dễ dàng hơn rất nhiều. Một biến được khai báo bên ngoài bất kỳ hàm nào, trong bất kỳ tệp nào, là biến toàn cục Các biến toàn cầu có sẵn trong suốt vòng đời của ứng dụng Một cách khác để tạo biến toàn cục là sử dụng đối tượng toàn cục 8 ở bất kỳ đâu trong ứng dụng
Tại thời điểm này, biến 9 có thể nhìn thấy ở mọi nơi
Như bạn có thể tưởng tượng những thực hành này là thực hành xấu phạm vi mô-đunTrước các mô-đun, một biến được khai báo bên ngoài bất kỳ chức năng nào là biến toàn cục. Trong các mô-đun, một biến được khai báo bên ngoài bất kỳ chức năng nào sẽ bị ẩn và không khả dụng đối với các mô-đun khác trừ khi nó được xuất rõ ràng Xuất cung cấp một chức năng hoặc đối tượng cho các mô-đun khác. Trong ví dụ tiếp theo, tôi xuất một hàm từ tệp mô-đun 0
Nhập làm cho một chức năng hoặc đối tượng, từ các mô-đun khác, có sẵn cho mô-đun hiện tại
Theo một cách nào đó, chúng ta có thể hình dung một mô-đun như một chức năng tự thực thi lấy dữ liệu nhập làm đầu vào và trả về dữ liệu xuất Phạm vi chức năngPhạm vi hàm có nghĩa là các tham số và biến được xác định trong một hàm hiển thị ở mọi nơi trong hàm nhưng không hiển thị bên ngoài hàm Hãy xem xét chức năng tiếp theo tự động thực thi, được gọi là IIFE IIFE là viết tắt của Biểu thức hàm được gọi ngay lập tức và là hàm chạy ngay sau định nghĩa của nó Các biến được khai báo với 1 chỉ có phạm vi chức năng. Hơn nữa, các biến được khai báo bằng 1 được đưa lên đầu phạm vi của chúng. Bằng cách này, chúng có thể được truy cập trước khi được khai báo. Hãy nhìn vào đoạn mã dưới đây 1Điều này không xảy ra đối với 3. Một biến được khai báo bằng 3 chỉ có thể được truy cập sau khi định nghĩa nó 4Một biến được khai báo bằng 1 có thể được khai báo lại nhiều lần trong cùng một phạm vi. Mã sau đây là tốt 6Các biến được khai báo bằng 3 hoặc 7 không thể được khai báo lại trong cùng một phạm vi 9Có lẽ chúng ta thậm chí không cần quan tâm đến điều này, vì 1 đã bắt đầu trở nên lỗi thờiPhạm vi khốiPhạm vi khối được xác định bằng dấu ngoặc nhọn. Nó được ngăn cách bởi 9 và 0Các biến được khai báo bằng 3 và 7 có thể có phạm vi khối. Chúng chỉ có thể được truy cập trong khối mà chúng được xác địnhXem xét mã tiếp theo nhấn mạnh phạm vi khối 3 0Ngược lại, khai báo 1 không có phạm vi khối 1Một vấn đề phổ biến khác khi không có phạm vi khối là việc sử dụng hoạt động không đồng bộ như 5 trong một vòng lặp. Mã vòng lặp chảy hiển thị số 5, năm lần 2Câu lệnh vòng lặp 6, với khai báo 3, tạo một ngôn ngữ biến mới cho phạm vi khối, cho mỗi lần lặp. Mã vòng lặp tiếp theo hiển thị 8 3Phạm vi từ vựngPhạm vi từ vựng là khả năng của hàm bên trong truy cập vào phạm vi bên ngoài mà nó được định nghĩa Xem xét mã tiếp theo 4Hàm 9 là một hàm đóng. Nó đề cập đến biến 0 từ hàm mẹ của nó 1, không phải biến từ hàm 2Hàm đóng có quyền truy cập vào phạm vi mà nó được tạo, không phải phạm vi mà nó được thực thi Phạm vi chức năng cục bộ của 1 là phạm vi từ vựng của chức năng 4Chuỗi phạm viMỗi phạm vi có một liên kết đến phạm vi cha. Khi một biến được sử dụng, JavaScript sẽ xem xét chuỗi phạm vi cho đến khi nó tìm thấy biến được yêu cầu hoặc cho đến khi nó đạt đến phạm vi toàn cầu, đó là phần cuối của chuỗi phạm vi Nhìn vào ví dụ tiếp theo 5Hàm bên trong 5 có quyền truy cập vào biến 6 cục bộ. Nó cũng có quyền truy cập vào các biến 7 và 8 từ các hàm bên ngoài và biến toàn cục 9Nếu không tìm thấy biến, nó sẽ trả về lỗi ở chế độ nghiêm ngặt 6Ở chế độ không nghiêm ngặt, được gọi là “chế độ cẩu thả”, nó sẽ làm điều xấu và tạo ra một biến toàn cục 7Phần kết luậnCác biến được xác định trong phạm vi toàn cầu có sẵn ở mọi nơi trong ứng dụng Trong một mô-đun, một biến được khai báo bên ngoài bất kỳ chức năng nào sẽ bị ẩn và không khả dụng đối với các mô-đun khác trừ khi nó được xuất rõ ràng Phạm vi hàm có nghĩa là các tham số và biến được xác định trong hàm hiển thị ở mọi nơi trong hàm Các biến được khai báo với 3 và 7 có phạm vi khối. 1 không có phạm vi khốiKhám phá JavaScript chức năng được đặt tên là một trong những cuốn sách Lập trình chức năng mới hay nhất bởi BookAuthority Để biết thêm về cách áp dụng các kỹ thuật lập trình hàm trong React, hãy xem Functional React Tìm hiểu về React chức năng, theo cách dựa trên dự án, với Kiến trúc chức năng với React và Redux Theo dõi trên Twitter QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO Tác giả của Khám phá JavaScript chức năng và Phản ứng chức năng. Nhiệt tình chia sẻ ý tưởng Nếu bạn đọc đến đây, hãy tweet cho tác giả để cho họ thấy bạn quan tâm. Tweet một lời cảm ơn Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu Phạm vi toàn cầu và phạm vi cục bộ trong JavaScript là gì?Phạm vi trong JavaScript đề cập đến ngữ cảnh hiện tại của mã, xác định khả năng truy cập của các biến đối với JavaScript. Hai loại phạm vi là cục bộ và toàn cầu. Biến toàn cục là những biến được khai báo bên ngoài khối . Biến cục bộ là những biến được khai báo bên trong khối .
Ví dụ phạm vi toàn cầu là gì?Một biến được khai báo ở đầu chương trình hoặc bên ngoài hàm được coi là biến phạm vi toàn cục. Hãy xem một ví dụ về biến phạm vi toàn cầu. Trong chương trình trên, biến a được khai báo ở đầu chương trình và là biến toàn cục. Nó có nghĩa là biến a có thể được sử dụng ở bất cứ đâu trong chương trình.
Phạm vi của biến toàn cầu trong kịch bản là gì?Bất kỳ biến nào được khai báo bên ngoài hàm được cho là có Phạm vi toàn cục. Nói một cách đơn giản, một biến có thể được truy cập ở bất kỳ đâu trong chương trình được gọi là biến có phạm vi toàn cục. Các biến có phạm vi toàn cầu có thể được xác định bằng bất kỳ từ khóa nào trong ba từ khóa. để, const và var.
Sự khác biệt giữa phạm vi khối và phạm vi toàn cầu trong JavaScript là gì?Một khối mã chỉ bao gồm các câu lệnh được nhóm bên trong dấu ngoặc nhọn ({ }). câu lệnh if, vòng lặp, hàm là những ví dụ về cấu trúc tạo ra khối mã. Biến toàn cục có phạm vi toàn cục. Biến toàn cục có thể truy cập được từ mọi nơi trong mã . |