JavaScript là ngôn ngữ lập trình bổ sung tính tương tác cho trang web của bạn. Điều này xảy ra trong trò chơi, trong hành vi phản hồi khi nhấn nút hoặc nhập dữ liệu trên biểu mẫu; . Bài viết này giúp bạn bắt đầu với JavaScript và nâng cao hiểu biết của bạn về những gì có thể
JavaScript là ngôn ngữ lập trình mạnh mẽ có thể thêm tính tương tác vào trang web. Nó được phát minh bởi Brendan Eich
JavaScript linh hoạt và thân thiện với người mới bắt đầu. Với nhiều kinh nghiệm hơn, bạn sẽ có thể tạo trò chơi, đồ họa 2D và 3D hoạt hình, ứng dụng dựa trên cơ sở dữ liệu toàn diện, v.v.
Bản thân JavaScript tương đối nhỏ gọn nhưng rất linh hoạt. Các nhà phát triển đã viết nhiều công cụ khác nhau trên ngôn ngữ JavaScript cốt lõi, mở khóa một lượng lớn chức năng với nỗ lực tối thiểu. Bao gồm các
- Giao diện lập trình ứng dụng trình duyệt [API] được tích hợp trong trình duyệt web, cung cấp chức năng như tự động tạo HTML và đặt kiểu CSS;
- API của bên thứ ba cho phép nhà phát triển kết hợp chức năng trong các trang web từ các nhà cung cấp nội dung khác, chẳng hạn như Twitter hoặc Facebook
- Các khung và thư viện của bên thứ ba mà bạn có thể áp dụng cho HTML để tăng tốc công việc xây dựng trang web và ứng dụng
Nó nằm ngoài phạm vi của bài viết này—như một phần giới thiệu sơ lược về JavaScript—để trình bày chi tiết về sự khác biệt giữa ngôn ngữ JavaScript cốt lõi với các công cụ được liệt kê ở trên. Bạn có thể tìm hiểu thêm trong khu vực học tập JavaScript của MDN, cũng như trong các phần khác của MDN
Phần bên dưới giới thiệu một số khía cạnh của ngôn ngữ cốt lõi và cũng mang đến cơ hội chơi với một số tính năng API của trình duyệt. Chúc vui vẻ
JavaScript là một trong những công nghệ web hiện đại phổ biến nhất. Khi các kỹ năng JavaScript của bạn phát triển, các trang web của bạn sẽ bước vào một chiều hướng mới của sức mạnh và sự sáng tạo
Tuy nhiên, làm quen với JavaScript khó hơn làm quen với HTML và CSS. Bạn có thể phải bắt đầu nhỏ và tiến bộ dần dần. Để bắt đầu, hãy xem cách thêm JavaScript vào trang của bạn để tạo Hello world. thí dụ. [Chào thế giới. là tiêu chuẩn cho các ví dụ lập trình giới thiệu. ]
Cảnh báo. Nếu bạn chưa theo dõi phần còn lại của khóa học của chúng tôi, hãy tải xuống mã ví dụ này và sử dụng nó làm điểm bắt đầu
- Truy cập trang web thử nghiệm của bạn và tạo một thư mục mới có tên
3. Trong thư mục tập lệnh, hãy tạo một tài liệu văn bản mới có tên làlet myVariable;
4 và lưu nólet myVariable;
- Trong tệp
5 của bạn, hãy nhập mã này vào một dòng mới, ngay trước thẻ đónglet myVariable;
6let myVariable;
- Điều này đang thực hiện công việc tương tự như phần tử
7 cho CSS. Nó áp dụng JavaScript cho trang, vì vậy nó có thể ảnh hưởng đến HTML [cùng với CSS và bất kỳ thứ gì khác trên trang]let myVariable;
- Thêm mã này vào tệp
4let myVariable;
const myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
- Đảm bảo các tệp HTML và JavaScript được lưu. Sau đó tải
5 trong trình duyệt của bạn. Bạn sẽ thấy một cái gì đó như thế nàylet myVariable;
Ghi chú. Lý do hướng dẫn [ở trên] đặt phần tử
myVariable = "Bob";
0 gần cuối tệp HTML là trình duyệt đọc mã theo thứ tự xuất hiện trong tệpNếu JavaScript tải trước và được cho là ảnh hưởng đến HTML chưa được tải, thì có thể có sự cố. Đặt JavaScript gần cuối trang HTML là một cách để đáp ứng sự phụ thuộc này. Để tìm hiểu thêm về các phương pháp thay thế, xem
Văn bản tiêu đề đã thay đổi thành Hello world. sử dụng JavaScript. Bạn đã làm điều này bằng cách sử dụng một hàm có tên là
myVariable = "Bob";
1 để lấy một tham chiếu đến tiêu đề của bạn, sau đó lưu trữ nó trong một biến có tên là myVariable = "Bob";
2. Điều này tương tự như những gì chúng tôi đã làm khi sử dụng bộ chọn CSS. Khi bạn muốn làm gì với một phần tử, bạn cần chọn phần tử đó trướcSau đó, mã đặt giá trị của thuộc tính
myVariable = "Bob";
4 của biến myVariable = "Bob";
2 [đại diện cho nội dung của tiêu đề] thành Hello worldGhi chú. Cả hai tính năng bạn đã sử dụng trong bài tập này đều là một phần của API Mô hình đối tượng tài liệu [DOM], có khả năng thao tác tài liệu
Để giúp bạn hiểu rõ hơn về cách JavaScript hoạt động, hãy giải thích một số tính năng cốt lõi của ngôn ngữ này. Cần lưu ý rằng các tính năng này là phổ biến cho tất cả các ngôn ngữ lập trình. Nếu bạn nắm vững những nguyên tắc cơ bản này, bạn cũng sẽ bắt đầu viết mã bằng các ngôn ngữ khác
Cảnh báo. Trong bài viết này, hãy thử nhập các dòng mã ví dụ vào bảng điều khiển JavaScript của bạn để xem điều gì sẽ xảy ra. Để biết thêm chi tiết về bảng điều khiển JavaScript, hãy xem Khám phá các công cụ dành cho nhà phát triển trình duyệt
Biến là nơi chứa giá trị. Bạn bắt đầu bằng cách khai báo một biến với từ khóa
myVariable = "Bob";
5, theo sau là tên bạn đặt cho biếnlet myVariable;
Dấu chấm phẩy ở cuối dòng cho biết vị trí kết thúc câu lệnh. Nó chỉ được yêu cầu khi bạn cần tách các câu lệnh trên một dòng. Tuy nhiên, một số người tin rằng nên có dấu chấm phẩy ở cuối mỗi câu lệnh. Có các quy tắc khác về thời điểm bạn nên và không nên sử dụng dấu chấm phẩy. Để biết thêm chi tiết, hãy xem Hướng dẫn của bạn về dấu chấm phẩy trong JavaScript
Bạn có thể đặt tên cho một biến gần như bất cứ thứ gì, nhưng có một số hạn chế. [Thấy. ] Nếu không chắc chắn, bạn có thể kiểm tra tên biến của mình xem có hợp lệ không
JavaScript phân biệt chữ hoa chữ thường. Điều này có nghĩa là
myVariable = "Bob";
6 không giống như myVariable = "Bob";
7. Nếu bạn gặp sự cố trong mã của mình, hãy kiểm tra trường hợpSau khi khai báo một biến, bạn có thể đặt giá trị cho nó
myVariable = "Bob";
Ngoài ra, bạn có thể thực hiện cả hai thao tác này trên cùng một dòng
let myVariable = "Bob";
Bạn lấy giá trị bằng cách gọi tên biến
myVariable;
Sau khi gán giá trị cho biến, bạn có thể thay đổi giá trị đó sau trong mã
let myVariable = "Bob";
myVariable = "Steve";
Lưu ý rằng các biến có thể chứa các giá trị có kiểu dữ liệu khác nhau
BiếnExplanationExampleStringĐây là một chuỗi văn bản được gọi là một chuỗi. Để biểu thị rằng giá trị là một chuỗi, hãy đặt giá trị đó trong dấu ngoặc kép đơn hoặc kép.myVariable = "Bob";
8 hoặcmyVariable = "Bob";
9SốĐây là một số. Các số không có dấu ngoặc kép xung quanh chúng. let myVariable = "Bob";
0BooleanĐây là giá trị Đúng/Sai. Các từ let myVariable = "Bob";
1 và let myVariable = "Bob";
2 là những từ khóa đặc biệt không cần dấu ngoặc kép. let myVariable = "Bob";
3ArrayĐây là cấu trúc cho phép bạn lưu trữ nhiều giá trị trong một tham chiếu duy nhất. let myVariable = "Bob";
4Tham khảo từng thành viên của mảng như thế này
let myVariable = "Bob";
5, let myVariable = "Bob";
6, v.v. Đối tượngĐây có thể là bất cứ thứ gì. Mọi thứ trong JavaScript là một đối tượng và có thể được lưu trữ trong một biến. Hãy ghi nhớ điều này khi bạn học. let myVariable = "Bob";
7Tất cả các ví dụ trên cũng vậy
Vậy tại sao chúng ta cần các biến? . Nếu các giá trị không thể thay đổi, thì bạn không thể thực hiện bất kỳ hành động nào, chẳng hạn như cá nhân hóa tin nhắn chúc mừng hoặc thay đổi hình ảnh hiển thị trong thư viện hình ảnh
Nhận xét là các đoạn văn bản có thể được thêm vào cùng với mã. Trình duyệt bỏ qua văn bản được đánh dấu là nhận xét. Bạn có thể viết nhận xét bằng JavaScript giống như bạn có thể viết bằng CSS
/*
Everything in between is a comment.
*/
Nếu nhận xét của bạn không có dấu ngắt dòng, bạn có thể đặt nó sau hai dấu gạch chéo như thế này
// This is a comment
Một
let myVariable = "Bob";
8 là một ký hiệu toán học tạo ra kết quả dựa trên hai giá trị [hoặc biến]. Trong bảng sau, bạn có thể thấy một số toán tử đơn giản nhất, cùng với một số ví dụ để thử trong bảng điều khiển JavaScriptToán tử Giải thích [Các] ký hiệu Ví dụ Cộng Cộng hai số lại với nhau hoặc kết hợp hai chuỗi. let myVariable = "Bob";
9myVariable;
0Phép trừ, phép nhân, phép chia Những phép tính này làm những gì bạn mong đợi chúng làm trong môn toán cơ bản. myVariable;
1, myVariable;
2, myVariable;
3myVariable;
4Bài tập Như bạn đã xem rồi. điều này gán một giá trị cho một biến. myVariable;
5myVariable = "Bob";
8Sự bình đẳng nghiêm ngặtĐiều này thực hiện một bài kiểm tra để xem liệu hai giá trị có bằng nhau không. Nó trả về kết quả let myVariable = "Bob";
1/let myVariable = "Bob";
2 [Boolean]. myVariable;
9_______21_______0Không, Không-không-bằngCái này trả về giá trị logic đối lập với giá trị đứng trước. Nó biến một let myVariable = "Bob";
1 thành một let myVariable = "Bob";
2, v.v. Khi nó được sử dụng cùng với toán tử Đẳng thức, toán tử phủ định sẽ kiểm tra xem hai giá trị có bằng nhau không. let myVariable = "Bob";
myVariable = "Steve";
3, let myVariable = "Bob";
myVariable = "Steve";
4Đối với "Không", biểu thức cơ bản là
let myVariable = "Bob";
1, nhưng phép so sánh trả về let myVariable = "Bob";
2 vì chúng ta phủ định nólet myVariable = "Bob";
myVariable = "Steve";
7"Không bằng" về cơ bản cho cùng một kết quả với cú pháp khác nhau. Ở đây chúng tôi đang kiểm tra "là
myVariable = "Bob";
6 KHÔNG bằng 3". Điều này trả về_______19_______2 vì myVariable = "Bob";
6 LÀ bằng 3/*
Everything in between is a comment.
*/
1Còn rất nhiều nhà khai thác khác để khám phá, nhưng hiện tại như vậy là đủ. Xem Biểu thức và toán tử để biết danh sách đầy đủ
Ghi chú. Trộn các loại dữ liệu có thể dẫn đến một số kết quả lạ khi thực hiện phép tính. Hãy cẩn thận rằng bạn đang đề cập đến các biến của mình một cách chính xác và nhận được kết quả như mong đợi. Ví dụ: nhập
/*
Everything in between is a comment.
*/
2 vào bảng điều khiển của bạn. Tại sao bạn không nhận được kết quả như mong đợi? . Nếu bạn nhập /*
Everything in between is a comment.
*/
3, bạn sẽ nhận được tổng của hai sốĐiều kiện là cấu trúc mã được sử dụng để kiểm tra xem một biểu thức có trả về đúng hay không. Một dạng câu điều kiện rất phổ biến là câu lệnh
/*
Everything in between is a comment.
*/
4. Ví dụlet iceCream = "chocolate";
if [iceCream === "chocolate"] {
alert["Yay, I love chocolate ice cream!"];
} else {
alert["Awwww, but chocolate is my favorite…"];
}
Biểu thức bên trong
/*
Everything in between is a comment.
*/
5 là bài kiểm tra. Điều này sử dụng toán tử đẳng thức nghiêm ngặt [như đã mô tả ở trên] để so sánh biến /*
Everything in between is a comment.
*/
6 với chuỗi /*
Everything in between is a comment.
*/
7 để xem hai biến có bằng nhau không. Nếu phép so sánh này trả về let myVariable = "Bob";
1, thì khối mã đầu tiên sẽ chạy. Nếu so sánh không đúng, khối mã thứ hai—sau câu lệnh /*
Everything in between is a comment.
*/
9—sẽ chạy thay thếChức năng là một cách đóng gói chức năng mà bạn muốn sử dụng lại. Có thể định nghĩa phần thân mã là một hàm thực thi khi bạn gọi tên hàm trong mã của mình. Đây là một giải pháp thay thế tốt để viết đi viết lại cùng một đoạn mã. Bạn đã thấy một số cách sử dụng hàm. Ví dụ
const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
0const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
1Các chức năng này,
// This is a comment
0 và // This is a comment
1, được tích hợp trong trình duyệtNếu bạn thấy thứ gì đó trông giống tên biến, nhưng theo sau nó là dấu ngoặc đơn—
// This is a comment
2 — thì đó có thể là một hàm. Các hàm thường nhận đối số. bit dữ liệu họ cần để thực hiện công việc của họ. Các đối số nằm trong dấu ngoặc đơn, được phân tách bằng dấu phẩy nếu có nhiều hơn một đối sốVí dụ: hàm
// This is a comment
3 làm cho hộp bật lên xuất hiện bên trong cửa sổ trình duyệt, nhưng chúng ta cần cung cấp cho nó một chuỗi làm đối số để cho hàm biết thông báo nào sẽ hiển thịBạn cũng có thể xác định các chức năng của riêng mình. Trong ví dụ tiếp theo, chúng ta tạo một hàm đơn giản lấy hai số làm đối số và nhân chúng
const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
2Hãy thử chạy cái này trong bảng điều khiển; . Ví dụ
const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
3Ghi chú. Câu lệnh
// This is a comment
4 yêu cầu trình duyệt trả lại biến // This is a comment
5 ra khỏi hàm để nó có sẵn để sử dụng. Điều này là cần thiết vì các biến được xác định bên trong các hàm chỉ khả dụng bên trong các hàm đó. Điều này được gọi là phạm vi biến. [Đọc thêm về. ]Tương tác thực sự trên một trang web yêu cầu xử lý sự kiện. Đây là những cấu trúc mã lắng nghe hoạt động trong trình duyệt và chạy mã để phản hồi. Ví dụ rõ ràng nhất là xử lý sự kiện nhấp chuột, được kích hoạt bởi trình duyệt khi bạn nhấp vào thứ gì đó bằng chuột. Để chứng minh điều này, hãy nhập thông tin sau vào bảng điều khiển của bạn, sau đó nhấp vào trang web hiện tại
const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
4Có một số cách để đính kèm trình xử lý sự kiện vào một phần tử. Ở đây chúng tôi chọn phần tử
// This is a comment
6. Sau đó, chúng tôi gọi hàm // This is a comment
7 của nó, chuyển vào tên của sự kiện để lắng nghe [// This is a comment
8] và một hàm để chạy khi sự kiện xảy raHàm chúng ta vừa chuyển đến
// This is a comment
7 ở đây được gọi là hàm ẩn danh, vì nó không có tên. Có một cách khác để viết các hàm ẩn danh mà chúng tôi gọi là hàm mũi tên. Hàm mũi tên sử dụng let iceCream = "chocolate";
if [iceCream === "chocolate"] {
alert["Yay, I love chocolate ice cream!"];
} else {
alert["Awwww, but chocolate is my favorite…"];
}
0 thay vì let iceCream = "chocolate";
if [iceCream === "chocolate"] {
alert["Yay, I love chocolate ice cream!"];
} else {
alert["Awwww, but chocolate is my favorite…"];
}
1const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
5Sau khi hoàn thành bài đánh giá cơ bản về JavaScript này [ở trên], hãy thêm một số tính năng mới vào trang web mẫu của chúng ta
Trước khi tiếp tục, hãy xóa nội dung hiện tại của tệp
let myVariable;
4 của bạn — phần bạn đã thêm trước đó trong phần "Xin chào thế giới. " ví dụ — và lưu tệp trống. Nếu không, mã hiện tại sẽ xung đột với mã mới mà bạn sắp thêmTrong phần này, bạn sẽ học cách sử dụng các tính năng JavaScript và DOM API để luân phiên hiển thị một trong hai hình ảnh. Thay đổi này sẽ xảy ra khi người dùng nhấp vào hình ảnh được hiển thị
- Chọn một hình ảnh bạn muốn làm nổi bật trên trang web mẫu của mình. Lý tưởng nhất là hình ảnh sẽ có cùng kích thước với hình ảnh bạn đã thêm trước đó hoặc càng gần càng tốt
- Lưu hình ảnh này vào thư mục
3 của bạnlet iceCream = "chocolate"; if [iceCream === "chocolate"] { alert["Yay, I love chocolate ice cream!"]; } else { alert["Awwww, but chocolate is my favorite…"]; }
- Đổi tên hình ảnh firefox2. png
- Thêm mã JavaScript sau vào tệp
4 của bạnlet myVariable;
6const myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
- Lưu tất cả các tệp và tải
5 trong trình duyệt. Bây giờ khi bạn nhấp vào hình ảnh, nó sẽ thay đổi thành hình ảnh kháclet myVariable;
Đây là những gì đã xảy ra. Bạn đã lưu trữ một tham chiếu đến phần tử
let iceCream = "chocolate";
if [iceCream === "chocolate"] {
alert["Yay, I love chocolate ice cream!"];
} else {
alert["Awwww, but chocolate is my favorite…"];
}
6 của bạn trong let iceCream = "chocolate";
if [iceCream === "chocolate"] {
alert["Yay, I love chocolate ice cream!"];
} else {
alert["Awwww, but chocolate is my favorite…"];
}
7. Tiếp theo, bạn đã đặt thuộc tính trình xử lý sự kiện let iceCream = "chocolate";
if [iceCream === "chocolate"] {
alert["Yay, I love chocolate ice cream!"];
} else {
alert["Awwww, but chocolate is my favorite…"];
}
8 của nó bằng một hàm không có tên [hàm "ẩn danh"]. Vì vậy, mỗi khi phần tử này được nhấp vào- Mã lấy giá trị của thuộc tính
9 của hình ảnhlet iceCream = "chocolate"; if [iceCream === "chocolate"] { alert["Yay, I love chocolate ice cream!"]; } else { alert["Awwww, but chocolate is my favorite…"]; }
- Đoạn mã này sử dụng một điều kiện để kiểm tra xem giá trị
9 có bằng với đường dẫn của hình ảnh gốc hay khônglet iceCream = "chocolate"; if [iceCream === "chocolate"] { alert["Yay, I love chocolate ice cream!"]; } else { alert["Awwww, but chocolate is my favorite…"]; }
- Nếu đúng như vậy, mã sẽ thay đổi giá trị
9 thành đường dẫn của hình ảnh thứ hai, buộc hình ảnh khác phải được tải bên trong phần tửlet iceCream = "chocolate"; if [iceCream === "chocolate"] { alert["Yay, I love chocolate ice cream!"]; } else { alert["Awwww, but chocolate is my favorite…"]; }
6let iceCream = "chocolate"; if [iceCream === "chocolate"] { alert["Yay, I love chocolate ice cream!"]; } else { alert["Awwww, but chocolate is my favorite…"]; }
- Nếu không [có nghĩa là nó phải đã thay đổi], giá trị
9 hoán đổi trở lại đường dẫn hình ảnh ban đầu, về trạng thái ban đầulet iceCream = "chocolate"; if [iceCream === "chocolate"] { alert["Yay, I love chocolate ice cream!"]; } else { alert["Awwww, but chocolate is my favorite…"]; }
- Nếu đúng như vậy, mã sẽ thay đổi giá trị
Tiếp theo, hãy thay đổi tiêu đề trang thành thông báo chào mừng được cá nhân hóa khi người dùng truy cập trang lần đầu. Thông báo chào mừng này sẽ tồn tại. Nếu người dùng rời khỏi trang web và quay lại sau, chúng tôi sẽ lưu tin nhắn bằng API lưu trữ web. Chúng tôi cũng sẽ bao gồm một tùy chọn để thay đổi người dùng và do đó, thông báo chào mừng
- Trong
5, thêm dòng sau ngay trước phần tửlet myVariable;
0myVariable = "Bob";
7const myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
- Trong
4, đặt mã sau vào cuối tệp, chính xác như được viết. Điều này có các tham chiếu đến nút mới và tiêu đề, lưu trữ từng biến bên tronglet myVariable;
8const myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
- Thêm chức năng sau để đặt lời chào được cá nhân hóa. Điều này sẽ chưa làm bất cứ điều gì, nhưng điều này sẽ sớm thay đổi
9Hàmconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
07 chứa hàmconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
08, hàm này hiển thị một hộp thoại, tương tự như hàmconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
3. Hàm// This is a comment
08 này thực hiện nhiều hơnconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
3, yêu cầu người dùng nhập dữ liệu và lưu trữ dữ liệu đó trong một biến sau khi người dùng nhấp vào OK. Trong trường hợp này, chúng tôi đang yêu cầu người dùng nhập tên. Tiếp theo, đoạn mã gọi API// This is a comment
12, cho phép chúng tôi lưu trữ dữ liệu trong trình duyệt và truy xuất sau này. Chúng tôi sử dụng hàmconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
13 của localStorage để tạo và lưu trữ một mục dữ liệu có tên làconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
14, đặt giá trị của nó thành biếnconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
15 chứa mục nhập của người dùng cho tên. Cuối cùng, chúng tôi đặtconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
4 của tiêu đề thành một chuỗi, cộng với tên mới được lưu trữ của người dùngmyVariable = "Bob";
- Thêm khối điều kiện sau. Chúng ta có thể gọi đây là mã khởi tạo, vì nó cấu trúc ứng dụng khi tải lần đầu
0Dòng đầu tiên của khối này sử dụng toán tử phủ định [logic NOT, được đại diện bởilet myVariable;
3] để kiểm tra xem dữ liệulet myVariable = "Bob"; myVariable = "Steve";
18 có tồn tại hay không. Nếu không, hàmconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
07 sẽ chạy để tạo nó. Nếu nó tồn tại [nghĩa là người dùng đã đặt tên người dùng trong lần truy cập trước], chúng tôi truy xuất tên được lưu trữ bằng cách sử dụngconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
20 và đặtconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
4 của tiêu đề thành một chuỗi, cộng với tên của người dùng, như chúng tôi đã làm bên trongmyVariable = "Bob";
07const myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
- Đặt trình xử lý sự kiện
8 này [bên dưới] vào nút. Khi nhấp vào,let iceCream = "chocolate"; if [iceCream === "chocolate"] { alert["Yay, I love chocolate ice cream!"]; } else { alert["Awwww, but chocolate is my favorite…"]; }
07 sẽ chạy. Điều này cho phép người dùng nhập một tên khác bằng cách nhấn nútconst myHeading = document.querySelector["h1"]; myHeading.textContent = "Hello world!";
1let myVariable;
Khi bạn chạy ví dụ và nhận được hộp thoại nhắc bạn nhập tên người dùng của mình, hãy thử nhấn nút Hủy. Bạn nên kết thúc với một tiêu đề có nội dung Mozilla thật tuyệt, không có giá trị. Điều này xảy ra bởi vì—khi bạn hủy lời nhắc—giá trị được đặt là
const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
25. Null là một giá trị đặc biệt trong JavaScript đề cập đến việc không có giá trịNgoài ra, hãy thử nhấp vào OK mà không cần nhập tên. Bạn nên kết thúc với một tiêu đề có nội dung Mozilla thật tuyệt, vì những lý do khá rõ ràng
Để tránh những sự cố này, bạn có thể kiểm tra xem người dùng có nhập tên trống không. Cập nhật hàm
const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
07 của bạn thành cái nàylet myVariable;
2Trong ngôn ngữ của con người, điều này có nghĩa là. Nếu
const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
15 không có giá trị, hãy chạy lại const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
07 từ đầu. Nếu nó có một giá trị [nếu câu lệnh trên không đúng], thì hãy lưu trữ giá trị đó trong const myHeading = document.querySelector["h1"];
myHeading.textContent = "Hello world!";
12 và đặt nó làm văn bản của tiêu đềNếu bạn đã làm theo tất cả các hướng dẫn trong bài viết này, bạn sẽ nhận được một trang trông giống như hình bên dưới. Bạn cũng có thể xem phiên bản của chúng tôi
Nếu gặp khó khăn, bạn có thể so sánh công việc của mình với mã ví dụ đã hoàn thành của chúng tôi trên GitHub
Chúng tôi vừa vạch ra bề mặt của JavaScript. Nếu bạn thích chơi và muốn tiến xa hơn, hãy tận dụng các tài nguyên được liệt kê bên dưới
Kịch bản phía máy khách động với JavaScript
Đi sâu vào JavaScript chi tiết hơn nhiều
Học JavaScriptĐây là một nguồn tài nguyên tuyệt vời cho các nhà phát triển web đầy tham vọng. Học JavaScript trong môi trường tương tác, với các bài học ngắn và bài kiểm tra tương tác, được hướng dẫn bởi đánh giá tự động. 40 buổi học đầu tiên miễn phí. Khóa học hoàn chỉnh có sẵn cho một khoản thanh toán nhỏ một lần