Tại sao JavaScript phải ở dưới cùng?

Nhiều trang web trên Internet có chứa JavaScript, một ngôn ngữ lập trình kịch bản chạy trên trình duyệt web để làm cho các tính năng cụ thể trên trang web hoạt động. Nếu JavaScript đã bị tắt trong trình duyệt của bạn, nội dung hoặc chức năng của trang web có thể bị hạn chế hoặc không khả dụng. Bài viết này mô tả các bước để bật JavaScript trong trình duyệt web

Thêm thông tin

trình duyệt web IE

Để cho phép tất cả các trang web trong vùng Internet chạy tập lệnh trong Internet Explorer

  1. Trên trình đơn trình duyệt web, nhấp vào Công cụ hoặc biểu tượng "Công cụ" (trông giống bánh răng) và chọn Tùy chọn Internet

    Tại sao JavaScript phải ở dưới cùng?

  2. Khi cửa sổ "Tùy chọn Internet" mở ra, hãy chọn tab Bảo mật

  3. Trên tab "Bảo mật", đảm bảo rằng vùng Internet được chọn, sau đó nhấp vào tùy chọn "Mức tùy chỉnh. " cái nút

    Tại sao JavaScript phải ở dưới cùng?

  4. Trong hộp thoại Cài đặt bảo mật – Vùng Internet, hãy nhấp vào Bật cho Active Scripting trong phần Scripting.  

    Tại sao JavaScript phải ở dưới cùng?

  5. Khi "Cảnh báo. " cửa sổ mở ra và hỏi: "Bạn có chắc chắn muốn thay đổi cài đặt cho vùng này không?" chọn Có

  6. Nhấp vào OK ở cuối cửa sổ Tùy chọn Internet để đóng hộp thoại

  7. Nhấp vào nút Làm mới để làm mới trang và chạy tập lệnh

    Tại sao JavaScript phải ở dưới cùng?

Để cho phép tạo tập lệnh trên một trang web cụ thể, trong khi tắt tập lệnh trong vùng Internet, hãy thêm trang Web cụ thể vào vùng Trang web đáng tin cậy

  1. Trên trình đơn trình duyệt web, hãy nhấp vào Công cụ hoặc biểu tượng "Công cụ" (trông giống bánh răng) và chọn Tùy chọn Internet

    Tại sao JavaScript phải ở dưới cùng?

  2. Khi cửa sổ "Tùy chọn Internet" mở ra, hãy chọn tab Bảo mật

  3. Trên tab "Bảo mật", hãy chọn vùng Trang web đáng tin cậy rồi nhấp vào nút Trang web

    Tại sao JavaScript phải ở dưới cùng?

  4. Đối với (các) trang web mà bạn muốn cho phép tạo tập lệnh, hãy nhập địa chỉ vào hộp văn bản Thêm trang web này vào vùng và nhấp vào Thêm. Ghi chú. Nếu địa chỉ không bắt đầu bằng "https. ", nhiều bạn cần bỏ chọn "Yêu cầu xác minh máy chủ (https. ) cho tất cả các trang web trong khu vực này".  

    Tại sao JavaScript phải ở dưới cùng?

  5. Nhấp vào Đóng rồi nhấp vào OK ở cuối cửa sổ Tùy chọn Internet để đóng hộp thoại

  6. Nhấp vào nút Làm mới để làm mới trang và chạy tập lệnh

    Tại sao JavaScript phải ở dưới cùng?

Google Chrome

Để bật JavaScript trong Google Chrome, vui lòng xem lại và làm theo hướng dẫn được cung cấp tại Bật JavaScript trong trình duyệt của bạn để xem quảng cáo trên trang web của bạn

Firefox của tập đoàn Mozilla

Để bật JavaScript trong Firefox, vui lòng xem lại và làm theo hướng dẫn được cung cấp tại Cài đặt JavaScript cho các trang web tương tác

Biến cục bộ phải được khai báo bằng từ khóa var, let hoặc const, nếu không chúng sẽ trở thành biến toàn cục

Chế độ nghiêm ngặt không cho phép các biến không được khai báo


Tuyên bố trên đầu trang

Thực hành viết mã tốt là đặt tất cả các khai báo ở đầu mỗi tập lệnh hoặc hàm

Điều này sẽ

  • Cung cấp mã sạch hơn
  • Cung cấp một nơi duy nhất để tìm kiếm các biến cục bộ
  • Làm cho nó dễ dàng hơn để tránh các biến toàn cầu (ngụ ý) không mong muốn
  • Giảm khả năng khai báo lại không mong muốn

// Khai báo ngay từ đầu
đặt FirstName, lastName, giá, chiết khấu, fullPrice;

// Sử dụng sau
firstName = "John";
lastName = "Doe";

giá = 19. 90;
giảm giá = 0. 10;

fullPrice = giá - chiết khấu;

Điều này cũng áp dụng cho các biến vòng lặp

for (cho i = 0; i < 5; i++) {



Khởi tạo biến

Đó là một thực hành mã hóa tốt để khởi tạo các biến khi bạn khai báo chúng

Điều này sẽ

  • Cung cấp mã sạch hơn
  • Cung cấp một nơi duy nhất để khởi tạo các biến
  • Tránh các giá trị không xác định

// Khai báo và khởi tạo từ đầu
hãy để firstName = "";
hãy để lastName = "";
để giá = 0;
để chiết khấu = 0;
đặt giá đầy đủ = 0,
const myArray = [];
const myObject = {};

Việc khởi tạo biến cung cấp ý tưởng về mục đích sử dụng (và kiểu dữ liệu dự kiến)


Khai báo các đối tượng với const

Khai báo các đối tượng với const sẽ ngăn chặn bất kỳ sự thay đổi loại ngẫu nhiên nào

Thí dụ

để xe = {loại. "Fiat", mô hình. "500", màu. "trắng"};
xe hơi = "Fiat";

const xe = {loại. "Fiat", mô hình. "500", màu. "trắng"};
xe hơi = "Fiat";


Khai báo mảng với const

Khai báo mảng với const sẽ ngăn chặn bất kỳ sự thay đổi kiểu ngẫu nhiên nào

Thí dụ

để ô tô = ["Saab", "Volvo", "BMW"];
ô tô = 3;

const xe = ["Saab", "Volvo", "BMW"];
ô tô = 3;


Không sử dụng đối tượng mới()

  • Sử dụng "" thay vì new String()
  • Sử dụng 0 thay vì new Number()
  • Sử dụng ==0 thay vì ==1
  • Sử dụng ==2 thay vì ==3
  • Sử dụng ==4 thay vì ==5
  • Sử dụng ==6 thay vì ==7
  • Sử dụng ==8 thay vì ==9

Thí dụ

cho x1 = "";
cho x2 = 0;
đặt x3 = sai;
const x4 = {};
const x5 = [];
const x6 = /()/;
const x7 = hàm(){};

Tự mình thử »


Cẩn thận với chuyển đổi loại tự động

JavaScript được gõ lỏng lẻo

Một biến có thể chứa tất cả các kiểu dữ liệu

Một biến có thể thay đổi kiểu dữ liệu của nó

Thí dụ

hãy để x = "Xin chào";
x = 5;

Tự mình thử »

Lưu ý rằng các số có thể vô tình được chuyển đổi thành chuỗi hoặc eval()0 (Không phải là số)

Khi thực hiện các phép toán, JavaScript có thể chuyển đổi số thành chuỗi

Thí dụ

gọi x = 5 + 7; . valueOf() là 12,  typeof x là một số
đặt x = 5 + "7"; . valueOf() là 57,  typeof x là một chuỗi
cho x = "5" + 7; . valueOf() là 57,  typeof x là một chuỗi
cho x = 5 - 7; . valueOf() là -2,  typeof x là một số
đặt x = 5 - "7"; . valueOf() là -2,  typeof x là một số
cho x = "5" - 7; . valueOf() là -2,  typeof x là một số
đặt x = 5 - "x"; . valueOf() là NaN, typeof x là một số

Tự mình thử »

Trừ một chuỗi từ một chuỗi, không tạo ra lỗi nhưng trả về eval()0 (Không phải là số)


Sử dụng === So sánh

Toán tử so sánh == luôn chuyển đổi (thành các loại phù hợp) trước khi so sánh

Toán tử eval()3 buộc so sánh các giá trị và loại

Thí dụ

0 == "";
1 == "1";
1 == đúng;

0 === "";
1 === "1";
1 === đúng;

Tự mình thử »


Sử dụng mặc định tham số

Nếu một hàm được gọi với một đối số bị thiếu, thì giá trị của đối số bị thiếu sẽ được đặt thành eval()4

Các giá trị không xác định có thể phá vỡ mã của bạn. Đó là một thói quen tốt để gán các giá trị mặc định cho các đối số

ECMAScript 2015 cho phép tham số mặc định trong định nghĩa hàm

hàm (a=1, b=1) { /*mã hàm*/ }

Đọc thêm về tham số hàm và đối số tại Tham số hàm


Kết thúc công tắc của bạn với mặc định

Luôn kết thúc câu nói eval()5 của bạn bằng eval()6. Ngay cả khi bạn nghĩ rằng không cần nó

Thí dụ

chuyển đổi (Ngày mới(). getDay()) {
trường hợp 0
ngày = "Chủ Nhật";
nghỉ;
trường hợp 1
ngày = "Thứ Hai";
nghỉ;
trường hợp 2
day = "Thứ Ba";
nghỉ;
trường hợp 3
ngày = "Thứ Tư";
nghỉ;
trường hợp 4
ngày = "Thứ năm";
nghỉ;
trường hợp 5
ngày = "Thứ Sáu";
nghỉ;
trường hợp 6
ngày = "thứ bảy";
nghỉ;
vỡ nợ
ngày = "Không xác định";
}

Tự mình thử »


Tránh Số, Chuỗi và Boolean làm Đối tượng

Luôn coi số, chuỗi hoặc booleans là giá trị nguyên thủy. Không phải là đối tượng

Khai báo các loại này dưới dạng đối tượng, làm chậm tốc độ thực thi và tạo ra các tác dụng phụ khó chịu

Thí dụ

cho x = "John";
hãy để y = chuỗi mới ("John");
(x === y) // sai vì x là chuỗi còn y là đối tượng

Tự mình thử »

Hoặc thậm chí tệ hơn

Thí dụ

hãy để x = chuỗi mới ("John");
hãy để y = chuỗi mới ("John");
(x == y) // sai vì bạn không thể so sánh các đối tượng

Tự mình thử »


Tránh sử dụng eval()

Hàm eval() được sử dụng để chạy văn bản dưới dạng mã. Trong hầu hết các trường hợp, không cần thiết phải sử dụng nó

Tại sao chúng tôi đặt JavaScript ở cuối trang?

Bằng cách đặt JS ở cuối trang của bạn trước thẻ đóng , bạn cho phép phân tích cú pháp HTML trước khi tải javascript. This gives the effect of faster page load times.

JavaScript nên ở đầu hay cuối trang?

Cách tốt nhất là đặt thẻ JavaScript HTML tải từ trên xuống dưới .

Tại sao lại đặt các tham chiếu JavaScript ở dưới cùng của HTML?

Nếu bạn bao gồm các tệp js bên ngoài ở cuối trang của mình, bạn ưu tiên các yêu cầu HTTP của mình cho màn hình trực quan sẽ được hiển thị cho khách hàng thay vì cho . .

Tại sao chúng ta thường thêm JS vào phần cuối của nội dung?

Lý do chính khiến các tệp JS được liên kết ở cuối phần nội dung là vì bất cứ khi nào trình duyệt gặp bất kỳ mã JS nào, trình duyệt sẽ phân tích cú pháp và thực thi ngay lập tức. Hence if it was to be added at the top, it would make the page rendering slow and thus it would take more time for page load.