4 câu lệnh JavaScript hữu ích bạn nên biết
Các câu lệnh JavaScript cho chúng ta sức mạnh để triển khai các loại logic khác nhau trong mã của chúng tôi. JavaScript cung cấp cho chúng tôi một vài trong số chúng, tất cả đều có mục đích và cú pháp riêng. Trong số các ví dụ nổi tiếng nhất, chúng ta có thể tìm thấy các câu lệnh biểu thức, câu lệnh lặp, câu lệnh điều kiện và hơn thế nữa
Trong bài hôm nay chúng ta sẽ thấy bốn câu lệnh JavaScript ít phổ biến hơn bạn có thể chưa biết trước nhưng có thể đào sâu kiến thức JavaScript và cho phép bạn viết mã tốt hơn.
1. Tuyên bố trống
Thay cho bất kỳ câu lệnh JavaScript nào, bạn có thể thêm một câu lệnh trống, được viết dưới dạng một dấu chấm phẩy ;
. Khi trình thông dịch JavaScript diễn giải một câu lệnh trống, không có mã nào được thực thi, do đó chúng có thể hữu ích cho thay thế các câu lệnh phụ mà bạn không muốn thực thi.
Chẳng hạn, giả sử có một biến gọi là giấy quỳ
với giá trị mặc định Trung tính
. Dựa trên giá trị của một biến khác được gọi là pH
, giấy quỳ
thay đổi một trong hai có tính axit
khi pH < 7 or căn bản
khi pH> 7.
Nếu giá trị của pH
Hóa ra là không hợp lệ, một lỗi được ném. Cho một điều kiện như thế này, các câu điều kiện sau đây được áp dụng:
var litmus = 'trung tính'; var pH; nếu (pH> 0 && pH<7) litmus = 'acidic'; else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Tuy nhiên, tập hợp các câu lệnh trên đưa ra một lỗi khi pH
Giá trị của nó là 7, không nên như vậy.
Khi nào pH
là 7, giấy quỳ
nên giữ giá trị mặc định của nó, đó là Trung tính
. Vì vậy, đối với trường hợp như thế này, hãy thêm một điều kiện khi pH
là 7 với một câu lệnh trống.
var litmus = 'trung tính'; var pH; nếu (pH> 0 && pH<7) litmus = 'acidic'; else if(pH===7) ; /* empty statement */ else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Bây giờ thì ở đâu pH
là 7, trình thông dịch không thực hiện bất kỳ hướng dẫn nào và giấy quỳ
giữ giá trị mặc định của nó, Trung tính
.
Các câu lệnh rỗng cũng có thể được sử dụng để điền vào một mảng với sự trợ giúp của cho
vòng lặp.
var ary = []; cho (var i = 0; i < 5; ary[i++] = i) ; /* empty statement */ console.log(ary); // [1, 2, 3, 4, 5]
Thông thường, một cho
câu lệnh lặp được theo sau bởi một câu lệnh con được tạo thành từ một câu lệnh đơn hoặc câu lệnh khối (câu lệnh được đặt trong dấu ngoặc nhọn) sẽ được thực hiện. Bằng cách sử dụng một câu lệnh trống thay cho câu lệnh phụ, trình thông dịch sẽ không có gì để thực thi sau mỗi vòng lặp, vì vậy chỉ lặp xảy ra và các điều kiện lặp được thực thi.
Trong ví dụ trên, ary [i ++] = i
thực thi cho mỗi lần lặp vòng lặp như là một phần của điều kiện lặp và mảng ary
được khởi tạo với các giá trị của tôi
.
2. trình sửa lỗi
Tuyên bố
Trong các công cụ gỡ lỗi, chúng ta có thể thêm điểm đánh dấu gọi là điểm dừng đến bất kỳ dòng nào trong mã nguồn đánh dấu các dòng từ nơi công cụ gỡ lỗi sẽ bắt đầu gỡ lỗi.
Trong JavaScript, trình sửa lỗi
tuyên bố hoạt động tương tự như một điểm dừng, ngoại trừ đó là thêm vào mã nguồn trực tiếp, thay vì trong một công cụ. Bất kỳ trình gỡ lỗi đang chạy sẽ tạm dừng thực thi tập lệnh khi nó đạt đến trình sửa lỗi
câu lệnh để giúp bạn gỡ lỗi mã.
Hãy nhớ rằng, việc gỡ lỗi sẽ được kích hoạt Chỉ khi tập lệnh đang chạy ở chế độ gỡ lỗi, tức là một chương trình gỡ lỗi đã chạy qua việc thực thi tập lệnh. Nếu không có chương trình gỡ lỗi hiện đang chạy trong khi giải thích trình sửa lỗi
tuyên bố, thông dịch viên sẽ tiếp tục công việc của mình như thể không có gì xảy ra.
Để kiểm tra nhanh, hãy chạy đoạn mã sau trong Codepen, trong khi vẫn mở công cụ gỡ lỗi của trình duyệt:
console.log ('tesing'); trình gỡ lỗi; console.log ('tuyên bố gỡ lỗi');
Bạn sẽ thấy một điểm dừng bên cạnh trình sửa lỗi
tuyên bố như dưới đây trong công cụ gỡ lỗi của trình duyệt.
3. Tuyên bố dán nhãn
Trong JavaScript, bạn cũng có thể thêm nhãn vào một số câu lệnh nhất định. Bằng cách làm như vậy, bạn có thể sau đó nhảy đến tuyên bố được dán nhãn sử dụng nhãn của nó trong mã của bạn, loại như đi đến
câu lệnh hoạt động trong một số ngôn ngữ khác.
Báo cáo được dán nhãn chỉ có thể được sử dụng cùng với phá vỡ
và tiếp tục
báo cáo, như trong JavaScript không có nghĩa đen đi đến
tuyên bố.
Cả hai phá vỡ
và tiếp tục
chỉ có thể được sử dụng bên trong các câu lệnh lặp, chẳng hạn như cho
vòng lặp (với một ngoại lệ, phá vỡ
có thể được sử dụng trong công tắc điện
tuyên bố là tốt). Vì vậy, chúng ta có thể dán nhãn các vòng lặp và sử dụng phá vỡ
và tiếp tục
để kiểm soát việc thực hiện của họ.
Các cú pháp của các báo cáo được dán nhãn Rất đơn giản, bạn chỉ cần thêm tên của nhãn bằng dấu hai chấm sau, như bạn có thể thấy nó trong ví dụ bên dưới, trong đó vòng lặp
là tên của nhãn chúng tôi thêm vào cho
vòng lặp.
vòng lặp: for (var i = 0; i<5; i++) if(i===2) continue loop; console.log(i); // 0, 1, 3, 4
Khi giá trị của tôi
là 2, việc thực thi nhảy trở lại vòng lặp thay vì tiếp tục và do đó ngăn chặn đầu ra của bàn điều khiển “2”.
Bây giờ hãy xem một ví dụ khác với phá vỡ
tuyên bố. Chỉ cần thay thế tiếp tục
từ khóa với phá vỡ
trong ví dụ trên, và bạn sẽ nhận thấy rằng thay vì quay lại vòng lặp như đã làm với tiếp tục
, vòng lặp kết thúc / phá vỡ hoàn toàn.
vòng lặp: for (var i = 0; i<5; i++) if(i===2) break loop; console.log(i); // 0, 1
Các ví dụ trên khá đơn giản để bạn có thể hiểu nhanh cách hoạt động của các câu lệnh được gắn nhãn, nhưng trong mã hóa thực tế, các nhãn được sử dụng thường xuyên hơn trong các vòng lặp ghép, khi cần phân biệt các vòng lặp khác nhau, như trong ví dụ sau:
vòng lặp: for (var i = 0; i<4; i++) for(var j=0; j<2; j++) if(i===2 && j===1) break loop; console.log(i+"-"+j);
Đây, vòng ngoài nghỉ giải lao ở giá trị 2 cho biến tôi
và tại 1 cho j
, và bàn điều khiển trả về đầu ra sau:
0-0 0-1 1-0 1-1 2-0
4. với
Tuyên bố
Khi trình thông dịch JS bắt gặp một cái tên không đủ tiêu chuẩn không chỉ định đối tượng hoặc chức năng nào mà cuộc gọi được liên kết với nó tìm kiếm chuỗi phạm vi đối với bất kỳ đối tượng hoặc chức năng phù hợp, cuộc gọi có thể tham khảo.
Bằng cách sử dụng với
tuyên bố, chúng ta có thể thêm một đối tượng vào đầu chuỗi phạm vi, và chỉ định đối tượng nào mà cuộc gọi được liên kết với.
Trong ví dụ sau, bạn có thể thấy rằng các thuộc tính của người
đối tượng được gọi bằng cách sử dụng tên của họ một mình bên trong với
tuyên bố.
var person = FirstName: "John", lastName: "Doe", tuổi: "18", quốc gia: "Greenland"; với (người) console.log ("Xin chào, tên tôi là" + FirstName + "" + lastName + ". Tôi" + age + "tuổi và sống ở" + country + "."); // "Xin chào, tôi tên là John Doe. Tôi 18 tuổi và sống ở Greenland."
So sánh mã ở trên trông như thế nào mà không cần sử dụng với
tuyên bố:
var person = FirstName: "John", lastName: "Doe", tuổi: "18", quốc gia: "Greenland"; console.log ("Xin chào, tên tôi là" + person.firstName + "" + person.lastName + ". Tôi là" + person.age + "tuổi và sống trong" + person.country + "." ); // "Xin chào, tên tôi là John Doe. Tôi 18 tuổi và sống ở Greenland."
Bạn có thể nhìn thấy với
câu lệnh có thể là một phím tắt tuyệt vời nếu bạn làm việc với nhiều thuộc tính của cùng một đối tượng.
Lưu ý, tuy nhiên, bằng cách sử dụng với
tuyên bố trong chế độ nghiêm ngặt không được phép, vì nó có thể gây ra một số nhầm lẫn phạm vi.
Ngoài ra, chỉ nên sử dụng với
câu lệnh nếu câu lệnh bên trong của nó sử dụng đối tượng được liên kết với với
tuyên bố, nếu không, thông dịch viên sẽ lãng phí thời gian nhìn vào đối tượng được đề cập bởi với
đầu tiên, đối với tất cả các tên thuộc tính không đủ tiêu chuẩn mà sau này nó tìm thấy bên trong với
khối.