Làm cách nào để nhận giá trị biến JavaScript trong PHP mà không cần làm mới?

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn giải pháp chuyển biến JavaScript sang PHP trong cùng một trang, ở đây chúng tôi cần chuyển biến javascript sang php trong cùng một trang nên chúng tôi cần nhúng mã script vào khối php bằng thẻ script

Show

Như chúng ta đã biết trong javascript sử dụng dịch vụ đối tượng tài liệu với phương thức writeln(), chúng ta có thể in bất kỳ thứ gì trên trang web nên chúng ta chỉ nhúng dòng đó vào php bằng cách xác định chúng giữa thẻ script

Hướng dẫn từng bước về việc chuyển biến JavaScript sang PHP trong cùng một trang. -

Ở đây, chúng tôi đã xác định khối html bằng tập lệnh trong phần này, chúng tôi đã xác định biến 'str' với từ khóa 'var'

Nó chứa chuỗi 'Xin chào mọi người', sau đó chúng tôi biết để in trong tập lệnh, chúng tôi cần sử dụng 'tài liệu. writeln()’ với sự trợ giúp của dịch vụ tài liệu

Sau đó, trong khối php, chúng ta cần nhúng dòng này với biến 'str' đã truyền làm tham số trong hàm này để chúng ta có thể hiển thị thành công trên chuỗi biến javascript trên trang web

<html>
    <head>
        <title>Passed variable javascript to php</title>
</head>
    <body>
        <script>
            var str="Hi Everyone";
        </script>
    </body>
</html>
<?php
echo "<script>document.writeln(str);</script>";
?>
  1. A php script can be placed anywhere in the document. A php script starts with .
  2. Phần mở rộng tệp mặc định cho tệp php là “. php” và các câu lệnh php kết thúc bằng dấu chấm phẩy ‘;’
  3. Trong khối nội dung html, chúng tôi đã xác định thẻ tập lệnh và trong đó chúng tôi đã tạo biến 'str' bằng cách sử dụng từ khóa 'var', sau đó chúng tôi lưu trữ chuỗi 'Xin chào mọi người' trên biến 'str'
  4. Chúng ta cũng có thể khai báo tên biến theo ý muốn của mình với bất kỳ chuỗi nào khác. Khi chúng ta cần chuyển biến javascript trên php trên cùng một trang, chúng ta cần nhúng mã script vào khối php thì chỉ chúng ta mới có thể đạt được kết quả
  5. For embed script code we need to define ‘document. writeln()’ line between script tag within double quotes. In this method we need to pass variable ‘str’ so we can easily display them on webpage successfully
  6. In php code we need to use echo() method for printing them on webpage. Here we passed string value you can try to explore some other types of values also we gets successful result on webpage
  7. So now we can exchange variable values between javascript and php. Using this we can also interact with server and webpage for do updates or something like that

Conclusion . -

In conclusion we are able to know how to pass javascript variable on php in same page

First we need to start our xampp server then we load this program on browser we can see result of passed variable str message of ‘Hi Everyone’ on webpage

We can pass any string between javascript and php at same page by using this same concept result won’t get affected we can get successful result on webpage

By using this concept we can also validate them and using javascript methods we can do more different types of process

I hope this tutorial on passing JavaScript variable to PHP in the same page helps you and the steps and method mentioned above are easy to follow and implement

Since its release in December 4, 1995 (six months after Java, which was released in May 23, 1995), JavaScript has gone through many changes. JavaScript began as a client-side programming language (which runs inside a web browser via a built-in JavaScript engine) for adding interactive contents to the web pages. It became more robust with DHTML (1997) and Ajax (1999). With Node. js (released in May 27, 2009), JavaScript can be used to program server-side and build full-stack web applications, as well as standalone utility scripts. In 2015, the ECMAScript 6 (ES6 or ES2015) introduces major update to the language, such as classes and modules, and make JavaScript a general-purpose programming language capable of complex software tasks

Introduction

It began as a Client-side Programming Language run inside a web browser via a Built-in JavaScript Engine

JavaScript is the most widely used client-side programming language that lets you supercharge your HTML with interactivity, animation and dynamic visual effect for better User Interface and User Experience (UI/UX). It is

  • a small, lightweight, object-oriented, cross-platform, special-purpose scripting language meant to be run under a host environment (typically a web browser)
  • ngôn ngữ kịch bản phía máy khách để làm phong phú thêm giao diện người dùng web và tạo các trang web động (e. g. , for. input validation, and immediate response to user's actions)
  • the engine that supports AJAX (Asynchronous JavaScript and XML - that can be used to update one part of the web page asynchronously), which generate renew interest in JavaScript

JavaScript works together with HTML/CSS. HTML provides the contents; CSS specifies the presentation; and JavaScript programs the behavior. Together, they enrich the UI/UX of the web users

JavaScript is Now Everywhere with Node. js

JavaScript đã phát triển vượt ra ngoài lập trình phía máy khách. Với sự ra đời của Node. js vào năm 2009 (môi trường thời gian chạy JavaScript đa nền tảng, mã nguồn mở), bạn có thể chạy JavaScript độc lập hoặc bên trong máy chủ (thay vì trình duyệt). Điều này cho phép bạn sử dụng một ngôn ngữ duy nhất cho cả lập trình phía máy chủ và phía máy khách

Lịch sử và Phiên bản

JavaScript, ban đầu được gọi là LiveScript, được tạo bởi Brendan Eich tại Netscape vào năm 1995. Ngay sau đó, Microsoft đã tung ra phiên bản JavaScript của riêng mình có tên là JScript. Sau đó, Netscape gửi nó lên ECMA (trước đây là "Hiệp hội các nhà sản xuất máy tính châu Âu", nay là "Ecma International - hiệp hội tiêu chuẩn hóa hệ thống thông tin và truyền thông châu Âu") để chuẩn hóa, cùng với JScript của Microsoft.

Đặc tả ECMA được gọi là "Đặc tả ngôn ngữ ECMA-262 ECMAScript" @ http. //www. ecma-quốc tế. org/ấn phẩm/tiêu chuẩn/Ecma-262. htm (cũng được phê duyệt là "ISO/IEC 16262")

  • ECMA-262 phiên bản 1 (tháng 6 năm 1997). Ấn bản đầu tiên
  • ECMA-262 phiên bản 2 (tháng 8 năm 1998)
  • ECMA-262 phiên bản 3 (12/1999). Đã thêm biểu thức chính quy, thử/bắt, chuyển đổi, do-while, v.v.
  • ECMA-262 phiên bản 4 - Bị bỏ rơi do sự khác biệt về chính trị. Vào năm 2007, TC-39 (ủy ban chịu trách nhiệm về ECMAScript) đã đưa ra một đặc điểm kỹ thuật dự thảo cho ECMAScript 4, có phạm vi lớn và giới thiệu nhiều cú pháp và tính năng mới. Nhưng một nhóm các nhà phát triển từ Yahoo, Google và Microsoft cảm thấy như vậy là quá nhiều và đã tạo ra một đề xuất thay thế có tên là ECMAScript 3. 1. ECMAScript 4 chưa bao giờ được hoàn thiện
  • ECMA-262 phiên bản 5 và 5. 1 (tháng 6 năm 2011). ECMAScript 3. 1 cuối cùng đã được chuẩn hóa thành ECMAScript 5. Đã thêm "chế độ nghiêm ngặt", phương thức lặp JSON, Array, v.v.
  • ECMA-262 2015. phổ biến nhất được gọi là ECMAScript 6 hoặc ES6
    Phiên bản này đã thêm cú pháp mới quan trọng để viết ứng dụng phức tạp, bao gồm khai báo lớp,
    if ( condition-1 ) {
       block-1 ;
    } else if ( condition-2 ) {
       block-2 ;
    } else if ( condition-3 ) {
       block-3 ;
    ......
    ......
    } else {
       block-n ;
    }
    7 cho khai báo cục bộ,
    if ( condition-1 ) {
       block-1 ;
    } else if ( condition-2 ) {
       block-2 ;
    } else if ( condition-3 ) {
       block-3 ;
    ......
    ......
    } else {
       block-n ;
    }
    8 cho khai báo hằng cục bộ, giá trị tham số mặc định, bộ lặp và cho. vòng lặp, trình tạo kiểu Python, biểu thức hàm mũi tên (_______1_______9), dữ liệu nhị phân, mảng đã nhập, bộ sưu tập mới (bản đồ, tập hợp và Bản đồ yếu), lời hứa, sự phản chiếu, proxy, chữ mẫu cho chuỗi, v.v.
  • ECMAScript 2016 (ES7). Kể từ ES6, các tiêu chuẩn ECMAScript sẽ có chu kỳ phát hành hàng năm vào tháng 6
    Phiên bản này đã thêm toán tử hàm mũ (_______4_______0), phạm vi khối của các biến và hàm, từ khóa
    
    
    
    
      
      JavaScript Example: Loop
    
    
      

    Testing Loop

    1 và
    
    
    
    
      
      JavaScript Example: Loop
    
    
      

    Testing Loop

    2 cho lập trình không đồng bộ, v.v.
  • ECMAScript 2017 (ES8). Đã thêm phần đệm chuỗi, các hàm không đồng bộ sử dụng trình tạo và lời hứa,
    
    
    
    
      
      JavaScript Example: Loop
    
    
      

    Testing Loop

    3,
    
    
    
    
      
      JavaScript Example: Loop
    
    
      

    Testing Loop

    4 để thao tác đối tượng dễ dàng, v.v.
  • ECMAScript 2018 (ES9). Đã thêm tham số phần còn lại (
    
    
    
    
      
      JavaScript Example: Loop
    
    
      

    Testing Loop

    5), toán tử trải rộng, phép lặp không đồng bộ, bổ sung cho biểu thức chính quy
  • ECMAScript 2019 (ES10). Đã thêm
    
    
    
    
      
      JavaScript Example: Loop
    
    
      

    Testing Loop

    6,
    
    
    
    
      
      JavaScript Example: Loop
    
    
      

    Testing Loop

    7, thay đổi
    
    
    
    
      
      JavaScript Example: Loop
    
    
      

    Testing Loop

    8 và
    
    
    
    
      
      JavaScript Example: Loop
    
    
      

    Testing Loop

    9, ràng buộc bắt trở thành tùy chọn, v.v.
  • ECMAScript 2020 (ES11). giới thiệu một kiểu nguyên thủy
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    0 cho các số nguyên có kích thước tùy ý, toán tử kết hợp nullish (
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    1) và đối tượng
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    2
  • ECMAScript 2021 (ES12). Đã thêm tính năng nâng cao cho chuỗi (
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    3), lời hứa (
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    4) và tham chiếu đối tượng. Toán tử gán logic (
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    5,
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    6,
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    7,)
JavaScript so với. Java

Java là một ngôn ngữ lập trình đa năng chính thức. Nó được tạo ra bởi James Gosling tại Sun Microsystems (nay là một phần của Oracle) và phát hành vào tháng 8 năm 1995

JavaScript được tạo bởi Brendan Eich tại Netscape, cũng vào năm 1995. Ban đầu được gọi là LiveScript, nó là một ngôn ngữ chuyên dụng nhỏ và nhẹ để viết chương trình phía máy khách chạy bên trong trình duyệt để tạo giao diện người dùng hoạt động và tạo các trang web động. Nó đã được đổi tên thành JavaScript trong một quyết định tiếp thị tồi tệ nhằm cố gắng tận dụng sự phổ biến của ngôn ngữ Java, khi Netscape phát hành Navigator 2 vào năm 1996

Java và JavaScript là các ngôn ngữ hoàn toàn khác nhau cho các mục đích lập trình khác nhau. Tuy nhiên, trong những ngày đầu, một số nỗ lực đã được thực hiện để áp dụng cú pháp và quy ước của Java vào JavaScript, vì vậy JavaScript dường như là một tập hợp con của Java. Trên thực tế, chúng có rất ít điểm chung

JavaScript phía máy khách KHÔNG THỂ làm gì?

Hãy nhớ rằng JavaScript là chương trình phía máy khách mà bạn đã tải xuống từ máy chủ và chạy bên trong trình duyệt của máy (máy khách) của bạn. Làm gì để ngăn ai đó viết JavaScript xóa sạch đĩa cứng của bạn hoặc kích hoạt một cuộc tấn công từ chối dịch vụ tới một máy chủ khác?

  1. Nó không thể đọc tệp từ máy của khách hàng
  2. Nó chỉ có thể kết nối với máy chủ mà nó đến từ đó. Nó có thể đọc tệp từ máy chủ mà nó đến từ. Nó không thể ghi tập tin vào máy chủ
  3. Nó không thể kết nối với máy chủ khác
  4. Nó không thể đóng một cửa sổ mà nó không mở
jQuery

jQuery là một thư viện JavaScript đa trình duyệt phổ biến. jQuery là JavaScript (nhưng có cú pháp mở rộng riêng), do đó, bạn cần hiểu JavaScript. Tôi khuyên bạn nên đọc qua cú pháp JavaScript (và đặc biệt chú ý đến các đối tượng), sau đó chuyển sang jQuery để sản xuất. Đọc "Thông tin cơ bản về jQuery"

JavaScript độc lập và phía máy chủ với nút. Công cụ JavaScript js

[LÀM]

Trình chỉnh sửa mã nguồn JavaScript và IDE

Bạn cần một trình soạn thảo văn bản để viết JavaScript của mình. Bạn có thể sử dụng trình soạn thảo văn bản thuần túy như NotePad của Windows hoặc TextEdit của macOS (KHÔNG được khuyến nghị nghiêm ngặt vì chúng không thể tô sáng cú pháp). Để cải thiện năng suất của bạn, một trình chỉnh sửa mã nguồn tốt (cung cấp tính năng đánh dấu cú pháp, tự động hoàn tất mã, đoạn mã, tài liệu, điều hướng biểu tượng, tái cấu trúc, v.v. ) là điều cần thiết. Có rất nhiều phần mềm miễn phí/phần mềm chia sẻ, chẳng hạn như Visual Studio Code (VS Code), Sublime Text, Atom, Brackets, Komodo Edit, Emacs, Vim, BBEdit, TextMate, NotePad++ (Windows), v.v. Bạn cũng có thể sử dụng IDE quy mô đầy đủ như Eclipse, NetBeans, IntelliJ IDEA. Ngoài ra còn có nhiều trình soạn thảo và trình biên dịch "trực tuyến" (e. g. , Programiz, JSFiddle, Playcode), nhưng tôi nghĩ rằng bạn nên cài đặt của riêng mình

Client-Side JavaScript by Examples

Tôi sẽ cho rằng bạn biết HTML và CSS (hãy đọc các bài viết về HTML/CSS của tôi nếu không). Tôi cũng sẽ giả định rằng bạn hiểu một số điều cơ bản về lập trình (tư duy tính toán) chẳng hạn như biến, cấu trúc if-else và vòng lặp for

JavaScript phía máy khách chạy bên trong trình duyệt thông qua công cụ JavaScript tích hợp. Có các tiêu chuẩn về JavaScript. Nhưng Big-5 (Chrome, Firefox, IE/Edge, Safari và Opera), đặc biệt là IE, không tuân thủ nghiêm ngặt tất cả các tiêu chuẩn. Hơn nữa, họ tạo tiện ích mở rộng của riêng mình. Do đó, hành vi của JavaScript có thể khác nhau trong các trình duyệt khác nhau. Bạn có thể cần kiểm tra JavaScript của mình trên nhiều trình duyệt

JavaScript cũng chạy độc lập (và trong máy chủ). Để chạy JavaScript độc lập, bạn cần cài đặt Node. js, một công cụ JavaScript. Tôi sẽ trình bày các ví dụ trong phần tiếp theo

JS phía máy khách EG 1. Hàm
for ( initialization ; test ; post-processing ) {
   body ;
}
8 và
for ( initialization ; test ; post-processing ) {
   body ;
}
9

Hãy để chúng tôi viết JavaScript phía máy khách đầu tiên của chúng tôi để in thông báo "Xin chào, thế giới"

Bắt đầu với một tệp mới và nhập các mã sau. Không nhập số dòng, được sử dụng để hỗ trợ giải thích. Take note that

  • JavaScript phân biệt chữ hoa chữ thường. Một
    
    
    
    
      
      JavaScript Example: User-defined function and onclick Event Handler
      
    
    
      

    Example on event and user-defined function

    0 KHÔNG phải là một
    
    
    
    
      
      JavaScript Example: User-defined function and onclick Event Handler
      
    
    
      

    Example on event and user-defined function

    1 và KHÔNG phải là một
    
    
    
    
      
      JavaScript Example: User-defined function and onclick Event Handler
      
    
    
      

    Example on event and user-defined function

    2
  • Khoảng trắng "thêm" (khoảng trống, tab và dòng mới) bị bỏ qua. Nghĩa là, nhiều khoảng trắng được coi là một ký tự trống. Bạn có thể sử dụng chúng một cách tự do để làm cho chương trình của bạn dễ đọc hơn

Lưu tệp dưới dạng "





  
  JavaScript Example: User-defined function and onclick Event Handler
  


  

Example on event and user-defined function

3" (hoặc bất kỳ tên tệp nào bạn thích, với phần mở rộng tệp là "




  
  JavaScript Example: User-defined function and onclick Event Handler
  


  

Example on event and user-defined function

4" hoặc "




  
  JavaScript Example: User-defined function and onclick Event Handler
  


  

Example on event and user-defined function

5"). Chạy tập lệnh bằng cách tải tệp HTML vào trình duyệt hỗ trợ JavaScript (e. g. , Một trong BIG FIVE - Chrome, Firefox, Internet Explorer/Edge, Safari hoặc Opera)





  
  JavaScript Example: Functions alert() and document.write()
  


  My first JavaScript says:
  

Làm thế nào nó hoạt động?
  1. JavaScript là mã lập trình được nhúng bên trong tài liệu HTML. Các mã được chứa giữa một cặp thẻ
    
    
    
    
      
      JavaScript Example: User-defined function and onclick Event Handler
      
    
    
      

    Example on event and user-defined function

    6, như sau. GHI CHÚ. Trong HTML4/XHTML, bạn cần thêm thuộc tính
    
    
    
    
      
      JavaScript Example: User-defined function and onclick Event Handler
      
    
    
      

    Example on event and user-defined function

    7 vào phần tử
    
    
    
    
      
      JavaScript Example: User-defined function and onclick Event Handler
      
    
    
      

    Example on event and user-defined function

    6. Dòng 7-9 và Dòng 13-17 là hai đoạn mã JavaScript, được đặt lần lượt trong phần
    
    
    
    
      
      JavaScript Example: User-defined function and onclick Event Handler
      
    
    
      

    Example on event and user-defined function

    9 và
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    0
  2. Các câu lệnh JavaScript được kết thúc bằng dấu chấm phẩy
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    1 (như Java/C/C++/C#)
  3. Hàm
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    2 (Dòng 8) bật ra một hộp thoại hiển thị
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    3 và một nút OK. Các chuỗi được đặt trong cặp dấu nháy kép hoặc nháy đơn, e. g. ,
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    4 hoặc
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    5
  4. Trang web hiện tại được đại diện bởi cái gọi là đối tượng
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    6 trong JavaScript. Thuộc tính
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    7 (Dòng 16) lưu trữ ngày sửa đổi cuối cùng của tài liệu hiện tại. Hàm
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    8 (Dòng 14 đến 16) có thể được sử dụng để ghi
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    3 đã chỉ định vào tài liệu hiện tại, như một phần của tài liệu HTML hiện tại
  5. Toán tử
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    00 (Dòng 16) có thể được sử dụng để nối hai chuỗi (như Java)
  6. Theo kết quả của
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    9, phần
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    0 của tài liệu này chứa.
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

  7. 
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    2 và
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    8 là một số hàm tích hợp thường được sử dụng được cung cấp trong JavaScript

CỐ GẮNG. In tiêu đề của tài liệu và vị trí URL. (Gợi ý. sử dụng thuộc tính

My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

05 và
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

06. )

Không bị bộ nhớ cache bắt - Thực hiện Control-Refresh (hoặc Control-F5)

Nếu bạn sửa đổi mã và tải lại trang web, mã mới có thể không được thực thi vì trình duyệt lưu phiên bản đã tải trước đó vào bộ đệm. Bạn có thể sử dụng Control-F5 (Control-Refresh) để yêu cầu trình duyệt loại bỏ bộ đệm và tìm nạp một trang mới

Không sử dụng
for ( initialization ; test ; post-processing ) {
   body ;
}
8

Bởi vì không ai thích nó

"Việc sử dụng cảnh báo thường không được khuyến khích để ủng hộ các phương pháp khác không chặn người dùng tương tác với trang - nhằm tạo trải nghiệm người dùng tốt hơn. Tuy nhiên, nó có thể hữu ích để gỡ lỗi. "

for ( initialization ; test ; post-processing ) {
   body ;
}
8 về mặt kỹ thuật là tài sản của đối tượng
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

09 và sẽ được gọi là
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

10. Nhưng vì ________ 45 _______09 là một đối tượng toàn cục nên tất cả các biến của nó đều là biến toàn cục và có thể được tham chiếu mà không cần tên đối tượng

Công cụ gỡ lỗi và công cụ phát triển web F12 của trình duyệt

Trước khi chúng tôi chuyển sang ví dụ tiếp theo, bạn nên dùng thử Công cụ phát triển web, có sẵn trong hầu hết các trình duyệt để gỡ lỗi HTML/CSS/JavaScript/ứng dụng web

  1. Khởi chạy trình duyệt của bạn và nhấn F12 để kích hoạt Công cụ phát triển web (Tôi đã thử trên Firefox, Chrome, Edge)
  2. Chọn ngăn "Bảng điều khiển". Bạn có thể nhập các câu lệnh JavaScript trong bảng điều khiển. Ví dụ: nhập từng câu lệnh JavaScript sau và quan sát kết quả.
    alert('hello, world')
    document.write('hello world, again')
    console.log('hello world, again and again')

ghi chú.

My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

12 ghi thông điệp vào bảng điều khiển, thường được sử dụng để gỡ lỗi (như
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

13 trong Java hoặc
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

14 trong C)

Các thông báo lỗi ở đâu?

Nếu bạn mắc bất kỳ lỗi cú pháp nào trong ví dụ trước, bạn sẽ không thấy bất kỳ thông báo lỗi nào xuất hiện trên trình duyệt mà chỉ đơn giản là tập lệnh không chạy. Không thể gỡ lỗi chương trình mà không có thông báo lỗi. Rất may, bạn thực sự có thể tìm thấy các thông báo lỗi trong bảng điều khiển. Thực hiện một số lỗi và làm mới trình duyệt

JS phía máy khách EG 2. Biến và Hàm
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

15,
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

16

Tập lệnh này nhắc người dùng nhập tên của họ, xác nhận tên và in thông báo chào mừng

Có ba loại hộp thoại bật lên để tương tác với người dùng

  1. Hàm
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    2 đặt
    
    
    
    
      
      JavaScript Example: Events onload, onmouseover and onmouseout
      
    
    
      

    "Hello" alert Box appears after the page is loaded.

    Point your mouse pointer here!!!

    3 trên hộp bật lên có nút OK. Người dùng cần nhấp vào nút OK để tiếp tục
  2. Hàm
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    19 hiển thị hộp bật lên đầu vào với
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    20 với các nút OK và Hủy. Nó trả về đầu vào do người dùng nhập dưới dạng một chuỗi; . Tham số tùy chọn
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    22 chỉ định chuỗi ban đầu sẽ được hiển thị. Trong bài viết này mình sẽ chỉ ra các tham số chức năng tùy chọn có đuôi
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    23 cho gọn
  3. Hàm
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    24 đặt
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    25 trên hộp bật lên có các nút OK và Hủy. Nó trả về
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    26 nếu người dùng nhấn nút OK;




  
  JavaScript Example: Variables and functions prompt() and confirm()
  


  

Welcome to JavaScript!

Làm thế nào nó hoạt động?
  1. Dòng 8 khai báo một biến toàn cục có tên là
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    28, thông qua từ khóa
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    29. A variable is a named storage location that holds a value. Khi biến được khai báo, bạn có thể gán (và gán lại) một giá trị cho biến đó, thông qua toán tử gán
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    30 (Dòng 9)
  2. Dòng 9 gọi hàm
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    19 để bật ra một hộp thoại và đọc chuỗi do người dùng nhập vào. Chuỗi đọc được gán cho biến
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    28. Hàm
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    15 tương tự như hàm
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    8, nhưng nó chấp nhận đầu vào của người dùng
  3. Ở Dòng 10, hàm
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    24 hiển thị thông báo và trả về
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    26 hoặc
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    27, tùy thuộc vào việc người dùng nhấn nút OK hay Cancel
  4. If the result is
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    26, Line 11 prints
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    39. Nếu không, Dòng 13 in ra _______45_______40

CỐ GẮNG. Thay vì in tin nhắn chúc mừng bằng cách sử dụng

for ( initialization ; test ; post-processing ) {
   body ;
}
9, hãy thực hiện điều đó thông qua một
for ( initialization ; test ; post-processing ) {
   body ;
}
8

JS phía máy khách EG 3. Đối tượng
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

43

Tập lệnh sau tạo một đối tượng

My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

43 biểu thị ngày giờ hiện tại và in thời gian hiện tại





  
  JavaScript Example: The Date object
  


Làm thế nào nó hoạt động?
  • Dòng 8 khai báo một biến có tên là
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    45. Nó cũng tạo một đối tượng
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    43 (thông qua toán tử
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    47), chứa dấu ngày-giờ hiện tại và gán nó cho
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    45
  • "______45_______49" bắt đầu chú thích cuối dòng (Dòng 8 và 9). Các nhận xét bị công cụ JavaScript bỏ qua nhưng quan trọng trong việc giải thích mã của bạn cho người khác (và cho chính bạn ba ngày sau)
  • Dòng 9 khai báo một biến có tên là
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    50. Nó cũng gọi hàm
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    51 trên đối tượng
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    45, ở dạng
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    53, để truy xuất phần giờ của đối tượng
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    45 và gán nó cho biến
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    50. Dòng 9 và 10, tương tự, xử lý phút và giây
  • Dòng 12 đến 14 sử dụng
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    56 để ghi vào tài liệu hiện tại.
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    57 (write-line) viết một dòng mới (
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    58) sau chuỗi đã cho. Hãy lưu ý rằng trình duyệt bỏ qua khoảng trắng thừa (dòng mới, khoảng trống, tab) trong tài liệu HTML;
  • Dòng 16-20 chứa câu lệnh if-then-else có điều kiện. Tùy thuộc vào giá trị của
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    50, một trong các thông báo sẽ được hiển thị
CỐ GẮNG
  1. Sửa đổi tập lệnh trên để in ngày, tháng, năm và ngày hiện tại trong tuần. (Gợi ý. Sử dụng các hàm
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    62,
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    63,
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    64 và
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    65 của đối tượng
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    43.
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    62 trả về 1-31.
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    63 trả về 0 đến 11 cho tháng 1 đến tháng 12.
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    64 trả về năm có 4 chữ số.
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    65 trả về 0 đến 6 cho Chủ Nhật đến Thứ Bảy)
  2. Sử dụng câu lệnh điều kiện để in ngày trong tuần trong word (i. e. , 0 cho Chủ Nhật, 1 cho Thứ Hai, v.v. ). (Gợi ý. Sử dụng cấu trúc
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    71 như sau. )
    if ( condition-1 ) {
       block-1 ;
    } else if ( condition-2 ) {
       block-2 ;
    } else if ( condition-3 ) {
       block-3 ;
    ......
    ......
    } else {
       block-n ;
    }

JS phía máy khách EG 4. vòng lặp

Tập lệnh sau nhắc người dùng về hệ số nhân và in bội số từ 1 đến 100 bằng vòng lặp for





  
  JavaScript Example: Loop


  

Testing Loop

Làm thế nào nó hoạt động?
  • Dòng 11 nhắc người dùng nhập một số và gán nó cho biến
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    72
  • Dòng 12-14 chứa vòng lặp for. Một vòng lặp for có cú pháp sau.
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    Làm cách nào để nhận giá trị biến JavaScript trong PHP mà không cần làm mới?

    Có bốn phần trong vòng lặp for. Ba trong số đó, khởi tạo, kiểm tra và xử lý hậu kỳ, được đặt trong ngoặc đơn

    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    73 và được phân tách bằng 2 dấu chấm phẩy. Phần thân chứa nhiệm vụ lặp đi lặp lại sẽ được thực hiện. Câu lệnh khởi tạo được thực thi đầu tiên. Bài kiểm tra sau đó được đánh giá. Nếu kiểm tra trả về true, phần thân được thực thi; . Thử nghiệm được đánh giá lại và quá trình lặp lại cho đến khi thử nghiệm trả về sai. Khi kiểm tra là sai, vòng lặp for hoàn thành và việc thực thi chương trình tiếp tục đến câu lệnh tiếp theo sau vòng lặp for. Lưu đồ sau đây minh họa quy trình vòng lặp for.

    Trong ví dụ này, biến

    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    74 được khởi tạo thành 1. Nếu
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    74 nhỏ hơn hoặc bằng 100, phần thân của vòng lặp sẽ thực thi, tiếp theo là câu lệnh xử lý hậu kỳ, làm tăng giá trị của
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    74 lên 1. Vòng lặp lặp lại cho đến khi giá trị của
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    74 KHÔNG nhỏ hơn hoặc bằng 100 (i. e. , nhiều hơn 100)

CỐ GẮNG
  1. Sửa đổi tập lệnh trên để nhắc người dùng về hệ số nhân cũng như số bội số được in (trong hai câu lệnh
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    15)
  2. Sửa đổi tập lệnh trên để chỉ in các bội số là số lẻ. (Hint. Toán tử modulo "
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    79" có thể được sử dụng để tính toán phần còn lại, e. g. ,
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    80 tính phần còn lại của
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    81 chia cho 2, kết quả là 0 hoặc 1. )

JS phía máy khách EG 5. Hàm do người dùng định nghĩa và Trình xử lý sự kiện
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

82

Bên cạnh các hàm có sẵn trong JavaScript như

for ( initialization ; test ; post-processing ) {
   body ;
}
8,
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

15,
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

85 và
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

57, bạn có thể xác định các hàm của riêng mình. Một hàm có tên và phần thân bao gồm một tập hợp các câu lệnh JavaScript cùng thực hiện một nhiệm vụ nhất định. Nó có thể lấy 0 hoặc nhiều đối số từ người gọi và trả lại 0 hoặc một giá trị cho người gọi





  
  JavaScript Example: User-defined function and onclick Event Handler
  


  

Example on event and user-defined function

Làm thế nào nó hoạt động?
  • Các dòng 8-10 định nghĩa một hàm có tên là
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    87, thông qua từ khóa
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    88. Hàm này gọi hàm tích hợp sẵn
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    89, hàm này sẽ mở một cửa sổ (hoặc tab) trình duyệt mới và tải trang "
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    90"
  • Dòng 15-16 tạo nút HTML. Nhấp vào nút sẽ kích hoạt trình xử lý sự kiện
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    82, tôi. e. ,
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    87 được xác định trước đó

CỐ GẮNG. Bao gồm một nút khác, mở ra "______45_______93"

JS phía máy khách EG 6. Thêm Trình xử lý sự kiện.
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

94,
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

95 và
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

96

JavaScript có thể được sử dụng để xử lý nhiều loại sự kiện, để phản hồi hành động của người dùng hoặc hành động của trình duyệt. Ví dụ,

  • My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    94. kích hoạt sau khi trình duyệt tải trang
  • My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    95 và
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    96. kích hoạt khi người dùng trỏ con trỏ chuột vào/ra khỏi phần tử HTML




  
  JavaScript Example: Events onload, onmouseover and onmouseout
  


  

"Hello" alert Box appears after the page is loaded.

Point your mouse pointer here!!!

Phân tích chương trình
  • Dòng 8 định nghĩa một biến
    alert('hello, world')
    document.write('hello world, again')
    console.log('hello world, again and again')
    00, chứa các chuỗi sẽ được hiển thị trong trình xử lý sự kiện
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    94
  • Trong thẻ mở (Dòng 12), chúng tôi xác định trình xử lý sự kiện
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    94 cho sự kiện
    alert('hello, world')
    document.write('hello world, again')
    console.log('hello world, again and again')
    03. Nó gọi
    for ( initialization ; test ; post-processing ) {
       body ;
    }
    8 với thông báo được xác định trước đó
  • Dòng 13 và 14 xác định trình xử lý sự kiện
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    95 và
    My First JavaScript says
    

    Hello world, again!

    This document was last modified on mm/dd/yyyy hh:mm:ss.

    96 cho phần tử HTML

    Màu của văn bản sẽ được thay đổi thành màu đỏ khi người dùng trỏ con trỏ chuột vào phần tử (bằng cách đặt thuộc tính kiểu CSS

    alert('hello, world')
    document.write('hello world, again')
    console.log('hello world, again and again')
    07 thành màu đỏ) và trở lại màu ban đầu khi con trỏ chuột được di chuyển (bằng cách đặt lại kiểu CSS . Từ khóa đặc biệt
    alert('hello, world')
    document.write('hello world, again')
    console.log('hello world, again and again')
    09 đề cập đến đối tượng này

JS phía máy khách EG 7. Tách HTML, CSS và JavaScript

Ví dụ trước hoạt động tốt. Bạn sẽ tìm thấy nhiều ví dụ như vậy trong sách giáo khoa, đặc biệt là sách giáo khoa cũ. Tuy nhiên, nó có một vấn đề lớn. Tất cả nội dung HTML, kiểu trình bày CSS và mã lập trình JavaScript được đặt trong một tệp duy nhất. Đối với một chương trình đồ chơi nhỏ, vấn đề không nghiêm trọng. Nhưng khi chương trình của bạn phát triển và nếu HTML, CSS và JavaScript được viết bởi những người khác nhau, bạn sẽ gặp thách thức thực sự trong việc duy trì chương trình. Hãy nhớ rằng HTML dành cho nội dung, CSS dành cho trình bày và JavaScript dành cho hành vi

Hãy viết lại ví dụ để đặt HTML, CSS và JavaScript vào ba tệp khác nhau

My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

0
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

1
My First JavaScript says

Hello world, again!

This document was last modified on mm/dd/yyyy hh:mm:ss.

2
Làm thế nào nó hoạt động?
  1. Đặt mã kịch bản bên trong trang HTML không phải là một thực hành kỹ thuật phần mềm tốt. Thay vào đó, cách tiếp cận được ưa thích hiện nay là đặt các tập lệnh, cũng như các kiểu CSS, trong các tệp bên ngoài, sau đó có thể áp dụng thống nhất cho tất cả các trang trong trang web của bạn
  2. Hãy bắt đầu với tệp HTML. Bây giờ, tệp HTML chỉ giữ nội dung, không có kiểu trình bày và logic lập trình

    1. Biểu định kiểu CSS được lưu trong một tệp bên ngoài, được tham chiếu qua thẻ
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      6 ở trên
      Ghi chú. Trong HTML4/XHTML1. 0 bạn cần đưa thuộc tính
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      11 vào thẻ mở
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      6

    2. Ngoài ra, mã lập trình JavaScript được lưu trong một tệp bên ngoài, cần được tham chiếu qua
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      6 ở trên, mặc dù không có nội dung
      Ghi chú. Trong HTML4/XHTML1. 0, bạn cần bao gồm thuộc tính
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      7 trong
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      6
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      3
      Làm thế nào nó hoạt động?
      1. Tài liệu HTML này chứa một phần tử có một
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        16 duy nhất, hai

        yếu tố, ba

        các phần tử có

        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        17 và ba phần tử
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        6 với phần tử duy nhất là
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        19

      2. Trong hàm do người dùng định nghĩa
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        20, chúng tôi sử dụng
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        21 để chọn phần tử, sau đó sửa đổi thuộc tính
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        22 của nó
      3. Trong hàm
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        23, chúng tôi sử dụng
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        24 để chọn tất cả

        các phần tử trong một mảng alert('hello, world') document.write('hello world, again') console.log('hello world, again and again')25. We then use a for-loop to iterate through all the elements in the array. Thuộc tính alert('hello, world') document.write('hello world, again') console.log('hello world, again and again')26 giữ độ dài của mảng

      4. Trong hàm
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        27, chúng tôi sử dụng
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        28 để chọn tất cả

        yếu tố. Chúng tôi sử dụng vòng lặp

        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        29 của JavaScript để lặp qua tất cả các phần tử. Chúng tôi sử dụng biến
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        8 an toàn nhất, vì vòng lặp
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        29 tạo một biến phạm vi khối mới cho mỗi lần lặp;

      5. Trang chứa ba nút để kích hoạt các chức năng được xác định
      6. để thao tác các phần tử trong DOM bằng JavaScript, mã JavaScript phải được chạy sau khi phần tử liên quan đã được tạo trong tài liệu. Điều này có thể được thực hiện bằng cách đặt JavaScript ngay trước thẻ kết thúc
      7. Tập lệnh chứa hàm
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        33, được chỉ định làm trình xử lý
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        94 thông qua
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        35. Nghĩa là,
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        33 sẽ được kích hoạt sau khi trang được tải. Hàm
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        33 gán trình xử lý sự kiện
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        82 cho các nút, được chọn thông qua
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        39 bằng cách sử dụng các nút duy nhất '_______58_______19
      8. Thay vì thuộc tính
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        22, các phiên bản JavaScript cũ hơn sử dụng
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        42 (bao gồm cả văn bản và phần đánh dấu) để sửa đổi nội dung của phần tử được chọn. Theo MDN. "______58_______22 nên được sử dụng thay thế. Do văn bản không được phân tích cú pháp dưới dạng HTML, nên văn bản có thể có hiệu suất tốt hơn. Hơn nữa, điều này tránh được vectơ tấn công XSS (Cross-Site Scripting). "

      JS phía máy khách EG 9. Chặn một siêu liên kết

      Ví dụ này sử dụng tập lệnh chặn siêu liên kết để đưa ra thông báo cảnh báo, sau đó tiếp tục truy cập liên kết

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      4_______45_______5
      Làm thế nào nó hoạt động?
      1. Trang HTML có một siêu liên kết
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        6với một
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        19 duy nhất
      2. Hàm
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        33 chỉ định trình xử lý
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        82 cho siêu liên kết, được chọn qua
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        39
      3. Khi nhấp vào siêu liên kết, trình xử lý
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        82
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        50 được kích hoạt. Nếu
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        16 trả về true, trang mới sẽ được tải;

      Các ví dụ JavaScript nâng cao khác

      Thêm "Ví dụ JavaScript nâng cao"

      Gỡ lỗi JavaScript

      A graphic debugger is a MUST in programming. Programming in JavaScript, in particular, requires a good debugger. It is because JavaScripts are interpreted and does not need to be compiled. Hence, there is no compiler to show you the syntax errors. A simple and trivial syntax error (e. g. , missing bracket, mis-spelling) will render the entire script not workable. Worst still, you would not see any error message when the script did not work. Can you debug without any error message or clue?

      Without a graphic debugging, the only mean to debug JavaScript is to insert

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      8 at strategic locations to print out selected data

      After modifying a JavaScript, I recommend that you use Ctrl-F5 to refresh the page, which shall load a fresh copy instead of loading from the cache. You might need to clear the browser's cache or re-start the browser, if you modification does not take effect

      F12 Web Developer Tools

      In Chrome and Firefox, you can press F12 to activate the developer Tools (hence called F12 Developer Tools)

      It provides these features

      1. Console. View the JavaScript error messages. Start the firebug and switch to the "Console" panel
      2. Script. View and debug JavaScript. Start the firebug. Switch to the "Script" panel. "Enable" or "Reload" if necessary. You can set a breakpoint by clicking on the statement number, single step through the JavaScript statements, watch the expression, and etc
      3. DOM. View the HTML DOM of the current document
      4. HTML and CSS

      To debug JavaScript

      1. Launch Firebug ⇒ Choose the "Script" panel to view your JavaScript, shown with green-bold line numbers
      2. Refresh (Ctrl-F5) the page, and check the error console (Under "Console" ⇒ "Errors") for syntax errors. Correct all the syntax errors
      3. To trace the program, set breakpoints at selected JavaScript statements, by clicking on the right margin (to the left of line number). A red circle shows up denoting a breakpoint. Take note that you can only set breakpoint on statements with a green-bold line number. [If your JavaScript statements do not have a green-bold line number, there are syntax errors on these statements. You need to correct the syntax errors and reload the page. ]
      4. Trigger the script (via clicking button/link, or reloading the page). The execution stops at the first breakpoint. You can then step-over the statement (or step-into function), and inspect the variables by positioning the mouse pointer on the variable; or add the variable to "watch"
      5. You can resume the execution (via the continue button)
      The
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      53

      Instead of using

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      8 and
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      9 to show the intermediate results, you can also use
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      56, which writes the
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      57 and the value of the
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      58 to the error console. It does not interfere the appearance you web page nor your normal operations

      For example, modify the JavaScript in Example 8 to print the values of innerHTML before modification. You need to turn on the console (press F12) to see the output

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      6

      JavaScript and HTML

      As seen from the previous examples, JavaScripts are embedded inside an HTML document, and executed by the browser. There are two occasions on which browser executes JavaScript instructions

      1. JavaScripts enclosed in
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        6 runs during loading of the page
      2. Some JavaScripts, called event handlers, run as a result of the user's or browser's action (or event). For example, clicking a button (
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        82) or loaded a page (
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        94)

      There are, therefore, two places to put your JavaScript

      1. between
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        6 container tags; and
      2. inside the HTML tags as the event handlers (such as
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        82,
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        95,
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        94), e. g. ,
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        66
      The
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      6 element contains the JavaScript programming statements. For example,

      In HTML4/XHTML1. 0, you need to include the attribute

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      68 in the
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      6 is needed although there is no content. ?

      In HTML4/XHTML1. 0, you need to include

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      68 in the
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      6 tags, and run it under a web browser, you will need to activate the debugger (Web Developer Tools) to see the outputs. See the above section on client-side examples

    3. Standalone JS Eg 2. [TODO]

      [TODO] Check Limitations such as File IO, Networking etc. Compare with Shell Script and Python script for automation

      Server-Side JavaScript by Examples

      You can also use JavaScript to program a server-side webapp, just like Java Servlet/JSP, Microsoft ASP, PHP, Python, etc. The appeal is that you can use one single language to program both the client-side and the server-side in a webapp

      See Node. js article

      JavaScript Basic Syntax

      Comments

      Comments are ignored by the JavaScript runtime but greatly useful in explaining your codes to others (and also to yourself three days later). You should use comments liberally to explain or document your codes

      An end-of-line comment begins with

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      49 and lasts till the end of the current line. A multi-line comment begins with
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      73 and lasts till
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      74

      Take note that

      • HTML comments are enclosed inside
      • CSS supports multi-line comment
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        75, but NOT end-of-line comment
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        49
      • JavaScript supports both
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        75 and
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        49, like Java/C/C++/C#

      Whitespaces (blank, tab, newline)

      Like C/C++/Java, JavaScript ignores additional whitespaces (blanks, tabs, and newlines). I strongly recommend that you use additional whitespaces to format your program to make your code easier to read and understand

      Expressions

      An expression is a combination of variables, literals, operators, and sub-expressions that can be evaluated to produce a single value

      Statements, Semicolon and Blocks

      A statement is a single programming instruction. Unlike C/C++/Java, where you need to end a statement with a semicolon (

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      79), in JavaScript the semicolon is optional. However, if semicolon is missing, you need to end the statement with a newline (and JavaScript engine will insert a semicolon for you)

      Semicolons in JavaScript divide the community. Some prefer to use them always, no matter what. Others like to avoid them for brevity. I shall leave it to you

      A block consists of zero or more statements enclosed in a pair of curly braces

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      80. No semicolon is needed after the closing brace

      Variables, Literals & Types

      Khai báo biến (
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      29,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      7,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      8) và Toán tử gán (
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      84)

      Một biến là một vị trí lưu trữ được đặt tên chứa một giá trị. Prior to ES6, you can only use

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      29 to declare global variables. ES6 introduces two new keywords.
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      7 để khai báo biến phạm vi khối cục bộ và
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      8 để khai báo hằng số phạm vi khối cục bộ

      Bạn nên thử

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      8 (an toàn nhất), tiếp theo là
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      7 và tránh
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      29

      You can assign (and re-assign) a value to a variable using the assignment (

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      84) operator. For example,

      Identifiers

      Mã định danh là tên được đặt để xác định các thực thể (chẳng hạn như biến và hàm). The rules for valid identifiers are

      • An identifier can contain letters (
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        92,
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        93), digits (
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        94), underscore (
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        95) and dollar sign (
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        96). Nhưng nó không thể bắt đầu bằng một chữ số (
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        94)
      • Mã định danh phân biệt chữ hoa chữ thường. Một
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        0 KHÔNG phải là một
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        2, và KHÔNG phải là một
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        1
      • Mã định danh không thể là từ khóa
      • Hãy lưu ý rằng KHÔNG được phép có dấu gạch nối (
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        01) và khoảng trắng. Do đó,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        02,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        03, KHÔNG phải là định danh hợp lệ. Bạn nên sử dụng dấu gạch dưới (
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        95) thay vì dấu gạch nối (
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        01)
      chữ

      Một chữ là một giá trị cố định, e. g. ,

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      06,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      07,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      08,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      09,
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26,
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21, có thể được gán cho một biến hoặc tạo thành một phần của biểu thức

      các loại

      JavaScript is object-oriented. But, It supports both primitive types and objects

      Primitives are not objects and do not possess properties and methods. JavaScript supports these primitive types

      1. string. a sequence of characters. Strings literals are enclosed in a pair of single quotes or double quotes (e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        08,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        13)
      2. number. takes both integer (e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        06) or floating-point (e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        15)
      3. boolean. takes boolean literal of either
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26 or
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        27 (in lowercase)
      4. undefined. takes a special literal value called
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        18. Take note that
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        18 is both a type and a literal value
      5. symbol (ES6). A data type whose instances are unique and immutable
      6. bigint (ES2020/ES11). integers with arbitrary precision

      JavaScript also supports these object types and value (we shall discuss object later)

      1. object. for general objects
      2. function. for function objects. Unlike Java, function is a first class object in JavaScript, e. g. , you can assign a function to a variable
      3. null. A special literal value for unallocated (unconstructed)
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        20. Take note that
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        21 is NOT
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        22. The
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        23 is
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        20.
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        21 is meant to represent an absence of a constructed object.
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        21 is actually considered to be a primitive as it has no properties and methods

      Unlike most of the general programming languages (such as Java/C/C++/C#) which are strongly type, JavaScript is loosely type (similar to most of the scripting languages such as UNIX Shell Script, Perl, Python). You do not have to explicitly declare the type of a variable (such as

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      27 and
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      28) during declaration. The type is decided when a value is assigned to that variable. If a number is assigned, the variable takes on the
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 type and can perform numeric operations such as addition and subtraction. If a string is assigned, the variable takes on the
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 type and can perform string operations such as string concatenation. In other words, the type is associated with the value, instead of the variable

      Operator
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      31

      You can use the operator

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      31 to check the type of the current value assigned to a variable.
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      31 returns a string

      For example,

      Loại
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18 và giá trị theo nghĩa đen của
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18

      An undeclared variable (via

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      29 keyword) takes on a special type called
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18. You cannot refer to its value

      When a variable is declared (via

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      29 keyword) without assigning an initial value, it takes on the type
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18 and holds a special value called
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18 (
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      41 is probably more precise?. ), As soon as a value is assigned, the variable takes on the type of that value. The act of putting a value into a variable sets its type. You can change the type of a variable by re-assigning a value of another type. In other words, type is associated with the value, not the variable. Types are converted automatically as needed during execution (known as dynamically-typed)

      For examples,

      (ES6) Constants
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      8-declaration

      You can create a read-only, named constant with the keyword

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      8 (in place of
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      29). For example,

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      7

      The
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 Type, Literals & Operations

      A variable of type

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 holds a number, either an integer or a floating-point number

      Integer literals can be expressed in

      • Decimal. begins with a digit
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        47 to
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        48 (not
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        49), e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        50 or
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        51,
      • Octal. begins with a digit
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        49, e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        53 or
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        54,
      • Hexadecimal. begins with
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        55 (or
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        56), e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        57 or
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        58
      • Binary. begins with
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        59 (or
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        60), e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        61 or
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        62. [Binary may not be supported in some browsers. ]

      Floating-point literals can be expressed in the usual form (e. g. ,

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      63) or scientific notation, e. g. ,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      64,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      65

      JavaScript also provides some special

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 literals

      • infinity. e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        67
      • -infinity. e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        68
      • NaN (Not-a-Number). e. g. ,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        69, or converting the string
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        70 to a number
      Arithmetic Operations

      Arithmetic operations, as tabulated below, can be applied to numbers. The following results are obtained assuming that

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      71,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      72 before the operation

      OperatorDescriptionExampleResult (
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      71,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      72)+Additionz = x + y;z is 7-Subtraction (or Unary Negation)z = x - y;z is 3*Multiplicationz = x * y;z is 10/Divisionz = x / y;z is 2. 5%Modulus (Division Remainder)z = x % y;z is 1++Unary Pre- or Post-Incrementy = x++; z = ++x;
      Same as. y = x; x = x+1; x = x+1; z = x;y is 5; z is 7; x is 7--Unary Pre- or Post-Decrementy = --x; z = x--;
      Same as. x = x-1; y = x; z = x; x = x-1;y is 4; z is 4; x is 3**Exponent
      (ES7)y ** x

      In JavaScript, arithmetic operations are always performed in double-precision floating-points (NOT integers). That is,

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      75 gives
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      76 (instead of 0 in Java/C/C++). You may use the built-in function
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      77 to truncate a floating-point value to an integer, e. g. ,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      78 and
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      79 gives
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      80. You may also use the built-in mathematical functions such as
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      81,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      82,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      83 for converting a floating-point number to an integer

      Toán Tử Số Mũ (
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      0)

      ECMAScript 2016 (ES7) introduces exponent operator (

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      0), you can write
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      86, e. g. ,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      87

      Before ES7, you have to use built-in function

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      88

      Arithmetic cum Assignment Operators

      These are short-hand operators to combine two operations

      OperatorDescriptionExampleResult+=Addition cum Assignmentx += y;Same as. x = x + y;-=Subtraction cum Assignmentx -= y;Same as. x = x - y;*=Multiplication cum Assignmentx *= y;Same as. x = x * y;/=Division cum Assignmentx /= y;Same as. x = x / y;%=Modulus cum Assignmentx %= y;Same as. x = x % y;
      Some frequently-used
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      89 built-in Functions
      • parseInt(str), parseFloat(str). Parse the
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        3 until the first non-digit, and return the number; or
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        91
      • Math. round(num), Math. floor(num), Math. ceil(num)
      • Math. random(). Generate a random number between 0 (inclusive) and 1 (exclusive)
      • isNaN(str). return true if the
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        3 is not a number. For example, It is interesting to note that JavaScript does not have counterpart functions like
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        93,
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        94
      • Number(str). Return the number represented by
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        25, or
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        91. Take that that this function name begins with uppercase, because this is a type casting operation
      • toFixed(decimalPlaces). Return this number/string to the given number of decimal places. For example,

      The
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 Type, Literals & Operations

      A

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 is a sequence of characters enclosed within a pair of single quotes or double quotes (e. g. ,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      08,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      13,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      01,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      02). ES6 introduces multi-line template strings delimited by back quotes (in the next section). You can use an escape sequence to represent special non-printable characters (such as
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      58 for new-line,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      04 for tab, and
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      05 for Unicode character); and to resolve conflict (e. g. ,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      06,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      07,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      08)

      Unlike Java/C/C++, but like HTML/CSS's attributes, you can use either single quotes or double quotes for

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30. This is handy as you can use single quotes if the
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 contains double quotes (e. g. ,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      11

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      11), without using the clumsy escape sequences (e. g. ,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      13)

      JavaScript is dynamically-type, and performs type conversion automatically. When a

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 value is used in arithmetic operations (such as subtraction or multiplication), JavaScript runtime automatically converts the
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 to a
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 if it represents a valid
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74; or a special
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 called
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      91 (not-a-number) otherwise. For example,

      The
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      00 Operator. Addition or Concatenation?

      If both the operands to a

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      00 operator are
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      22, it performs the usual numeric addition. However, if one (or both) of the operand is a
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30, the
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      00 operator is overloaded to perform string concatenation. The other operand will be converted to a
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30, if necessary. For example,

      Converting a numeric
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 to
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74.
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      77,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      29 and
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      30

      To convert a numeric

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 to a
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74, you could use the built-in functions
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      77 or
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      29, which returns a
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 if conversion is successful; or
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      91 otherwise. For example,

      Take note that

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      77 works as long as the
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 begins with digits. It will parse up to the first non-digit. For example,

      You can also use the function

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      30, which converts the object argument to a number that represents the object's value; or
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      91 if conversion fails. For example,

      Constructing/Converting to
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30.
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      42 and
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      43

      Bạn có thể xây dựng một

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 từ một loại khác thông qua hàm
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      42, e. g. ,

      Bạn có thể sử dụng

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      43 để có được một đại diện
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 của một đối tượng, e. g. ,

      Bạn cũng có thể chuyển đổi một số thành chuỗi bằng cách nối với một chuỗi rỗng, e. g. ,

      Thuộc tính của chuỗi
      • length. E. g. ,
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        48 returns the length of the string
      String's Operations
      • toUpperCase(). returns the uppercase string
      • toLowerCase(). trả về chuỗi chữ thường
      • charAt(idx). returns the character at the
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        49 position. Index begins from 0. Negative index can be used, which counts from the end of the string
      • substring(beginIdx, endIdx). returns the substring from
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        50 (inclusive) to
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        51 (exclusive)
      • substr(beginIdx, length). returns the substring from
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        50 of
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        53
      • indexOf(searchStr, fromIdx?). Return the beginning index of the first occurrence of
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        54, starting from an optional
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        55 (default of 0); or
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        56 if not found
      • lastIndexOf(searchStr, fromIdx?). Return the beginning index of the last occurrence of
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        54
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        6, starting from an optional
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        55 (default of
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        60); or
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        56 if not found
      • slice(beginIdx, endIdx). Return the substring from
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        62 (inclusive) to
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        63 (exclusive)
      • repeat(count) (ES6). repeat the string
      • split(delimiter), array. join(delimiter). returns an array by splitting the string using
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        64, e. g. ,
      • Searching/Modifying Strings using Regular Expression. See ""
      Character Type?

      JavaScript does not have a dedicated character type, but treats it as a one-character single. To get an individual character from a string, you can use

      • charAt(idx). For example,
      • Array Bracket Operator []. You can treat a string as a character array, and access individual character via array bracket operator
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        65, e. g. ,

      (ES6) Multi-line Back-Quoted Template String and Substitution

      Prior to ES6, You can enclosed a string literal using either single or double quotes (e. g. ,

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      08,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      13,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      01,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      02). Escape sequences are to be used for special characters (e. g. ,
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      58 for new-line,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      04 for tab) and resolving conflict (e. g. ,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      06,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      07,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      08). Multi-line strings are not supported

      ES6 introduces template string, delimited by back-quotes, for example,

      There is no need to escape single or double quote inside a template string (because there is no conflicts). But you need to use escape sequence for back-quote, i. e. ,

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      75

      Template strings support multi-line strings. All whitespaces (blank, tab, newline) within the back-quotes are part of the multi-line string. For example,

      Substitution
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      76

      Template strings support substitution, which allow you to embed any valid JavaScript expression as part of the string in the form of

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      76, for example,

      Multi-line template string with substitution provides a more convenient way to write out formatted HTML fragment. For example,

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      8

      The
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      78 Type, Literals & Operations

      A variable of the type

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      78 holds a value of either
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26 of
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      27.
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26 and
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      27 are keywords in JavaScript

      As mentioned, JavaScript performs automatic type conversion if necessary. Trong quá trình chuyển đổi loại, 6 giá trị sau đây được chuyển đổi thành

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      27

      1. number
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        49
      2. number
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        91 (Not-a-Number),
      3. empty string (
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        13,
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        88),
      4. 
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        18 value,
      5. boolean
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        27,
      6. My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        21 (unallocated) object

      All the other values are converted to

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26

      You need to memorize this.

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      93 return
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26 if
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      95 is one of these 6 values.
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      49,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      91,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      13,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18,
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      27, and
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21

      Comparison (Relational) Operators

      The following relational operators, which produce a

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      78 result, are defined in JavaScript. The results are obtained assuming
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      03,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      04

      OperatorDescriptionExampleResult
      (
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      03,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      04)==Abstract Equal To
      (in Value)
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      9
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      0. =Abstract Not Equal To===Strictly Equal To
      (in Type and Value)
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      1
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      2. ==Strictly Not Equal To>Greater Than>=Greater Than or Equal To
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      07 vs.
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      08

      The strictly equality operator (

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      07) returns
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26 if both operands have the same type and same value; while abstract equality operator (
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      08) returns
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26 if both operands have the same value, but may or may not be the same type, i. e. , == converts its operands if the operand types do not match

      JavaScript needs to provide two different equality operators, because it is loosely type and carries out automatic type conversion in many situation. For example,

      • When a number is compared with a string, the string is converted to a number (or
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        91 if it does not contain a valid number). Hence,
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        14 returns
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26. But,
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        16 returns
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        27, because the operands are not of the same type
      • if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        07,
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        19,
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        08,
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        21 can be applied to boolean (and all the JavaScript types), e. g. ,
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        22 gives
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26 (because empty string is converted to
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        27); but
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        25 gives
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26
      • It is RECOMMENED to use
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        07 (or
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        19), instead of
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        08 (or
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        21), unless you are certain that type is not important
      String Sorting (Collation) Order

      When two strings are compared, the encoding order (ASCII/Unicode table) is used. Hence, string

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      31 is greater than string
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      32

      For example,

      To compare two strings alphabetically, use

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      33, e. g. , [TODO]

      Logical (Boolean) Operators

      The following boolean (or logical) operators are provided in JavaScript

      OperatorDescriptionExampleResult&&Logical AND. Logical OR. Logical NOT&&=Logical AND cum assignment (ES12). =Logical OR cum assignment (ES12)

      Notes.

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      34 in JavaScript is a bitwise XOR operator, not really boolean XOR (which is rarely needed)

      Short-Circuit Evaluation for Boolean Expressions

      Evaluation of logical operations are always short-circuited. That is, the operation is terminated as soon as the result is certain, e. g. , (

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      35) is short-circuited to give
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      27, (
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      37) gives
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26, the
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      5 will not be evaluated

      Explicit Type Conversion

      The JavaScript runtime performs type conversion automatically. However, at times, you may need to convert from one type to another explicitly

      Converting a

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 to a
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30. Simply concatenate the
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 with an empty
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      43, e. g. ,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      44 gives
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      45

      Chuyển đổi một

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 thành một
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74. Use built-in functions
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      48,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      49 or
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      50 to convert a
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      3 which contains a valid
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74. For example,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      53 gives
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      80,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      78 gives
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      80,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      79 gives
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      80,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      59 gives
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      60,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      61 gives
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      80, but
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      63 gives
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      91

      Converting a float to an integer. Use

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      77 (e. g. ,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      78 gives
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      80), or built-in mathematical functions such as
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      81,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      83 or
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      82

      Flow Control - Decision (Conditional)

      JavaScript provides these flow control construct. The syntax is the same as Java/C/C++

      SyntaxExample
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      3
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      4
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      5
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      6
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      7

      ghi chú. JavaScript, like C/Java, does not support native

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      71, but nested
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      72

      [ES12] Logical nullish Assignment Operator (
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      5)

      The logical nullish assignmebnt

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      74 assigns only if x is
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21 (unallocated object) or
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18 (uninitialized variable) i. e. , nullish. For example,

      Flow Control - Loops (Repetition)

      JavaScript provides the following loop constructs. The syntax is the same as Java/C/C++

      JavaScript also introduces

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      77 and
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      29 loops (to be discussed later)

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      79,
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      80 and Statement Label

      The following loop-control statements are provided (same syntax as Java/C/C++)

      • break. exits the innermost loop
      • continue. aborts the current iteration, and continues to the next iteration
      • label. provides an identifier for a statement, which can be used by
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        81 and
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        82

      Try to avoid these statements, as they are hard to trace and maintain

      Arrays

      An array is an indexed collection. An array can be used to store a list of items (elements) under a single name with an running integer index. You can reference individual element via the integral index in the form of

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      83. Furthermore, you can conveniently process all the elements of an array collectively via a loop with a varying index

      Creating an Array via "Array Initializer
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      84"

      You can create an array by assigning an array literal to a variable, known as Array Initializer, in the form of

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      84. For examples,

      Take note that JavaScript's array literal is enclosed in square bracket

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      86, instead of
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      87 in Java/C/C++. JavaScript uses
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      87 for object literal (to be discussed later)

      You can also use an Array Initializer to create an array with missing indexes. For example,

      Accessing an Item

      You can access individual element of an array via an integral index, in the form of

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      83. The index of the array begins at 0, and shall be a non-negative integer

      Array's Property
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      90

      The length of the array is maintained in a variable (property) called

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      90, which can be accessed via
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      92. In fact, the property
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      93 returns the last integral index plus 1, as JavaScript's array index is 0-based. Nonetheless, you are allow to manipulate (write) the
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      93. For example,

      Dynamic Arrays

      Unlike Java/C/C++, the JavaScript array is dynamically allocated. You can add more elements to an array. You can also remove the content of an element using keyword

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      95. For examples,

      Accessing All Items using for-loop with index

      Array is usually processed collectively using a loop, e. g. ,

      The JavaScript's
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      77 loop

      JavaScript provides a special

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      97 loop to process all the elements in an array. The syntax is as follows, where
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      98 takes on the each of the index number of element which are not
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      8

      For example,

      The JavaScript's
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      29 loop

      JavaScript provides a special

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      01 loop to process all the elements in an array. The syntax is as follows, where
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      02 takes on the each of the element including the
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      9
      Add/Remove item(s)

      You can

      • Use index
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        04 to add one item to the end of an array
      • Use
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        95 to remove a particular index (set it to
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        18)
      • Use
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        07 to add one or more items to the end of an array.
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        08 returns the resultant length of the array
      • Use
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        09 to add one or more items to the beginning of an array.
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        10 returns the resultant length of the array
      • Use
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        11 to remove and return the last item of an array
      • Use
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        12 to remove and return the first item of an array

      For examples,

      PurposeExampleAdd one item to the end of an array using index
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      13Add one or items to the end of an array using
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      07
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      08 trả về độ dài kết quả của mảng. Thêm một hoặc các mục vào đầu mảng bằng cách sử dụng
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      09
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      10 trả về độ dài kết quả của mảng. Xóa và trả lại mục cuối cùng khỏi một mảng bằng cách sử dụng
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      11Xóa và trả lại mục đầu tiên của một mảng bằng cách sử dụng
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      12
      Thuộc tính của mảng (Biến) và Hoạt động (Hàm)

      Đối tượng

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      20 có các thuộc tính thường được sử dụng này

      • chiều dài. số lượng mặt hàng bao gồm
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        18 mặt hàng. Trên thực tế,
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        93 được đặt thành chỉ số cuối cùng cộng với 1

      Nó có những phương pháp thường được sử dụng

      • mảng. tham gia ([dấu phân cách]). nối các phần tử của một mảng lại với nhau thành một chuỗi duy nhất, được phân tách bằng
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        23 (mặc định là
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        24). For example,
      • str. split([dấu phân cách, giới hạn]). Đảo ngược của
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        25. Lấy một chuỗi và tách thành một mảng dựa trên
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        26. Ví dụ,
      • mảng. concat(giá trị1, giá trị2,. , giá trịN). trả về một mảng mới bao gồm mảng này và các mảng hoặc giá trị đã cho. Ví dụ,
      • mảng. đảo ngược(). đảo ngược thứ tự các phần tử trong mảng, phần tử đầu tiên trở thành phần tử cuối cùng. Ví dụ, ______75_______0
      • mảng. loại(). sắp xếp các phần tử trong mảng. Ví dụ, Take note take, theo mặc định, số cũng được sắp xếp dựa trên thứ tự ASCII/Unicode. Để sắp xếp các số theo số, bạn có thể cung cấp chức năng so sánh gọi lại. Hàm sẽ nhận 2 đối số, chẳng hạn như
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        27 và
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        28, đồng thời trả về một số âm nếu
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        29;
      • mảng. lát cắt (bắt đầuIdx, endIdx). trích xuất và trả về một phần của mảng từ
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        62 (bao gồm) đến
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        63 (không bao gồm). Ví dụ,
      • mảng. splice(startIdx, countToRemove, insertItem1, insertItem2, . ). loại bỏ các phần tử khỏi một mảng và chèn các phần tử vào vị trí của nó. Ví dụ,
      • mảng. indexOf(searchItem[, startIdx]) và mảng. lastIndexOf(searchItem[, startIdx]). tìm kiếm chỉ mục của mục tiến hoặc lùi. It returns -1 if item cannot be found. Ví dụ,
      • xô(). thêm một hoặc nhiều phần tử vào cuối một mảng và trả về độ dài kết quả của mảng
      • nhạc pop(). loại bỏ và trả về phần tử cuối cùng từ một mảng
      • sự thay đổi(). loại bỏ và trả về phần tử đầu tiên từ một mảng
      • bỏ dịch (). thêm một hoặc nhiều phần tử vào phía trước của một mảng và trả về độ dài kết quả của mảng

      Lập trình hàm trong mẫu Filter-Map-Reduce

      Mảng cũng hỗ trợ các phương thức lặp này lặp qua từng mục của mảng, để hỗ trợ lập trình chức năng của mẫu giảm bản đồ bộ lọc

      • mảng. forEach(gọi lại). nhận một hàm với một đối số lặp qua tất cả các mục trong mảng. GHI CHÚ. Cú pháp này nhằm hỗ trợ lập trình chức năng của mẫu filter-map-reduce
      • mảng. bản đồ (gọi lại). trả về một mảng mới, chứa tất cả giá trị trả về từ việc thực thi
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        34 trên mỗi mục. Ví dụ,
      • bộ lọc (gọi lại). trả về một mảng mới, chứa các mục mà
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        34 đã trả về
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26. Ví dụ,
      • mảng. mọi (gọi lại). trả lại
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26 nếu
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        34 trả lại
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26 cho TẤT CẢ các mặt hàng
      • mảng. một số (gọi lại). trả về
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26 nếu
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        34 trả về
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26 cho ít nhất một mục trong mảng

      Để biết thông số kỹ thuật chi tiết và các ví dụ về một đối tượng tích hợp sẵn, hãy kiểm tra "Tham khảo JavaScript chính"

      Mảng kết hợp của các cặp khóa-giá trị

      Một mảng kết hợp là một mảng của cặp khóa-giá trị. Thay vì sử dụng các số 0, 1, 2,. as keys as in the regular array, you can use anything as key in an associative array. Associative arrays are used extensively in JavaScript and jQuery

      JavaScript does not support native associative array (it actually does not support native array too). In JavaScript, associative arrays (and arrays) are implemented as objects (to be elaborate later)

      You can create an associative array via the Object Initializer. For example,

      Take note that Array initializer uses square brackets

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      43; while object initializer (for associative array) uses curly brackets
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      44

      Functions

      Functions are useful

      • when you have to use the same codes several times
      • as the JavaScript event handler
      • make your program easier to read and understood

      A function accepts zero or more arguments from the caller, performs the operations defined in the body, and returns zero or a single result to the caller

      Functions are objects in JavaScript (to be discussed later)

      The syntax for user-defined function is

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      1

      Functions are declared using the keyword

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      88. Unlike Java/C/C++, you do not have to specify the return-type and the types of the arguments because JavaScript is loosely typed. You can use a
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      46 statement to return a single piece of result to the caller anywhere inside the function body. If no
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      46 statement is used (or a
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      46 with no value), JavaScript returns
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18

      For client-side JavaScript, functions are generally defined in the

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      9 section, so that it is always loaded before being invoked

      To invoke a function

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      2
      Client-Side JavaScript Function Examples
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      3
      Function's
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      51

      Function has access to an additional built-in variable called

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      51 inside its body, which is an array containing all the arguments. For example,

      Pass by Value vs. Pass by Reference

      In JavaScript, primitive arguments are passed by value. That is, a copy of the variable is made and passed into the function. On the other hand, objects (including array and associative array) are passed by references. That is, if you modify the content of an object inside the function, the "copy" outside the function is also affected

      The Default Function Arguments

      JavaScript lets you invoke a function omitting some trailing arguments. It sets the omitted arguments to the value

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18. Ví dụ,

      Bạn có thể sử dụng tính năng này để cung cấp giá trị mặc định cho đối số hàm, ví dụ:

      Trong ví dụ trên, chúng tôi cho phép người gọi bỏ qua các đối số ở cuối (

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      54,
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      55) hoặc chuyển một giá trị
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21 (là một ký tự đặc biệt cho đối tượng chưa phân bổ)

      Thành ngữ phổ biến trong thực tế ngày nay là sử dụng biểu thức OR ngắn mạch (như trong

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      55) để cung cấp giá trị mặc định nếu không có giá trị (
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18 hoặc
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21) được thông qua, miễn là các đầu vào hợp lệ không thể là
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      27,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      49,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      88 và
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      91 mà

      (ES6) Chức năng với giá trị tham số mặc định

      ES6 greatly simplify the above by introducing default parameter value in the form of

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      65. For example,

      (ES6) Rest/Spread Operator (
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      5) and Arrow-Function Notation

      ES6 also introduces rest/spread operator (

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      5) and arrow-function notation. Xem bài viết ES6

      Anonymous (Inline) Functions

      In JavaScript, you can define an anonymous function (without a function name) using the following syntax

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      4

      Anonymous function is often used in event handlers and others

      Function Variables

      In JavaScript, a variable can hold a primitive (number, string, boolean) or an object

      In JavaScript, functions are first-class object. Do đó, một biến cũng có thể chứa một đối tượng hàm. Ví dụ,

      Hai cách trong việc xác định một chức năng

      Như đã thấy trong ví dụ trên, có hai cách để xác định hàm

      1. Sử dụng câu lệnh khai báo hàm ở dạng.
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        5
      2. Sử dụng một biểu thức hàm bằng cách gán một hàm ẩn danh cho một biến.
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        6
      Chức năng như đối số

      Nhớ lại rằng một chức năng nhận 0 hoặc nhiều đối số từ người gọi. Trong JavaScript, các đối số có thể là đối tượng nguyên thủy hoặc đối tượng. Vì các hàm là đối tượng hạng nhất trong JavaScript, nên một hàm có thể lấy một hàm khác làm đối số của nó

      Ví dụ: hàm sau lấy một hàm và một mảng làm đối số của nó và áp dụng hàm cho mảng

      Hàm lồng nhau

      Trong JavaScript, bạn có thể định nghĩa một hàm bên trong một hàm. Ví dụ,

      Hàm làm giá trị trả về

      Bạn có thể trả về một chức năng từ một chức năng. Ví dụ,

      Tương tác với người dùng

      JavaScript phía máy khách cung cấp các chức năng cấp cao nhất được tích hợp sẵn này để tương tác với người dùng

      • cảnh báo (str). Bật lên một hộp để thông báo cho người dùng về thông tin quan trọng. Người dùng sẽ phải nhấp vào "OK" để tiếp tục.
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        8 không trả lại gì (hoặc
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        18)
      • lời nhắc (str, defaultValue). Hộp bật lên để nhắc người dùng nhập dữ liệu, với tùy chọn
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        70.
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        15 trả về đầu vào của người dùng dưới dạng một chuỗi. Ví dụ,
      • xác nhận(str). Pop-up a box and ask user to confirm some information. Người dùng sẽ phải nhấp vào "OK" hoặc "Hủy" để tiếp tục.
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        16 trả về giá trị boolean. Ví dụ,
      • tài liệu. viết (str), tài liệu. writeln(str). Viết chuỗi đã chỉ định vào tài liệu hiện tại.
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        57 (write-line) viết một dòng mới sau chuỗi, trong khi
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        85 thì không. Hãy lưu ý rằng các trình duyệt bỏ qua các khoảng trắng thừa, bao gồm các dòng mới, trong tài liệu HTML và coi dòng mới là một ký tự trống. Bạn cần viết thẻ
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        60 hoặc
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        59 để yêu cầu trình duyệt hiển thị dấu ngắt dòng

      Các chức năng tích hợp cấp cao nhất sau đây có sẵn cho phía máy khách cũng như phía máy chủ (hoặc độc lập)

      • bảng điều khiển. nhật ký (giá trị). ghi vào bảng điều khiển hệ thống (hoặc lỗi), được sử dụng chủ yếu để gỡ lỗi

      Các chức năng tích hợp cấp cao nhất khác

      JavaScript cũng định nghĩa trước các hàm toàn cầu cấp cao nhất sau đây

      • parseInt(str), parseFloat(str). phân tích cú pháp
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        3 đã cho và trả về giá trị số hoặc
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        91 (Không phải là số).
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        79 chấp nhận một
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        80 (hoặc cơ sở) tùy chọn. Ví dụ,
      • Số (đối tượng). trả về số đại diện của đối tượng. Nó hoạt động với đối tượng
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        81, cũng như nhiều đối tượng như
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        43
      • isFinite(số). trả về
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26 nếu
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        74 không phải là
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        91,
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        86 hoặc
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        87
      • isNaN(số). trả về
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26 nếu số là
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        91. Hữu ích để kiểm tra đầu ra của
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        77 và
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        29
      • đánh giá (mã). đánh giá các mã JavaScript đã cho, có thể là một biểu thức hoặc một chuỗi các câu lệnh. Ví dụ. [LÀM]
      • encodeURI(), decodeURI(), encodeURIComponent(), decodeURIComponent(). mã hóa hoặc giải mã các cặp tên-giá trị cho yêu cầu HTTP, bằng cách thay thế các ký tự đặc biệt bằng
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        92. Ví dụ. [LÀM]

      Giới thiệu về Sự kiện (đối với JavaScript phía máy khách)

      JavaScript phía máy khách thường hướng sự kiện. Nghĩa là, một chức năng (được gọi là trình xử lý sự kiện) sẽ được kích hoạt để phản hồi hành động của một người dùng hoặc trình duyệt nhất định tạo ra một sự kiện

      Các sự kiện thường được sử dụng là

      • 
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        93. generated when the user clicks on an HTML element
      • 
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        94,
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        95. được tạo khi người dùng định vị con trỏ chuột bên trong/ra khỏi phần tử HTML
      • alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        03,
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        97. được tạo sau khi trình duyệt tải tài liệu và trước khi tài liệu tiếp theo được tải tương ứng

      Trình xử lý sự kiện, được gọi là

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      98 (chẳng hạn như _______ 45 _______82,
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      00, ________45 _______94), là hàm phản hồi một sự kiện. Trình xử lý sự kiện thường được gắn vào thẻ HTML đích, e. g. ,

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      7

      Thông tin thêm về các sự kiện trong các phần sau

      Các đối tượng

      Đối tượng ở khắp mọi nơi

      JavaScript hướng đối tượng (OO) và các đối tượng ở khắp mọi nơi trong JavaScript. Mảng là đối tượng. Chức năng cũng là đối tượng. Các nguyên hàm như chuỗi và số được tự động đóng hộp cho các đối tượng trong nhiều thao tác. Hầu hết mọi thứ trong JavaScript đều có thể là một đối tượng, có thể ngoại trừ

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18 và
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21 (đối tượng chưa phân bổ)

      Điều quan trọng là phải hiểu các đối tượng để thành thạo JavaScript, vì chúng ở khắp mọi nơi và chúng được sử dụng rộng rãi trong các trình cắm thêm JavaScript như jQuery, AngularJS, React, v.v.

      Tuy nhiên, JavaScript không hỗ trợ tất cả các tính năng OO, để giữ cho ngôn ngữ đơn giản

      Thuộc tính và phương thức

      Trong các ngôn ngữ lập trình hướng đối tượng thông thường (như Java/C++/C#), một đối tượng là một tập hợp các thuộc tính và phương thức dưới một tên chung

      • Thuộc tính (hay còn gọi là biến, thuộc tính). chứa các giá trị được liên kết với đối tượng
      • Phương thức (còn gọi là phép toán, hàm). chứa các hành động mà đối tượng có thể thực hiện

      Ví dụ: một đối tượng

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      04 có các thuộc tính như
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      05,
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      06,
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      07,
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      08;

      Không giống như các ngôn ngữ OO chính thức, JavaScript được thiết kế trên mô hình OO đơn giản. Một đối tượng JavaScript chỉ đơn giản là một tập hợp các thuộc tính. Thuộc tính là sự kết hợp giữa khóa (hoặc tên) và giá trị (i. e. , cặp khóa-giá trị hoặc cặp tên-giá trị). Nếu giá trị là một hàm (hãy nhớ rằng các hàm JavaScript là các đối tượng hạng nhất có thể được gán cho các biến), thì thuộc tính được gọi là một phương thức. Nói cách khác, JavaScript không phân biệt giữa thuộc tính và phương thức như các ngôn ngữ hướng đối tượng thông thường. Một phương thức chỉ đơn giản là một thuộc tính nắm giữ một chức năng

      Tạo đối tượng thông qua Trình khởi tạo đối tượng với Object Literal

      Bạn có thể tạo một đối tượng mới bằng cách gán trực tiếp một đối tượng theo nghĩa đen cho một biến, được gọi là Trình khởi tạo đối tượng. Cú pháp như sau

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      8
      • Một đối tượng JavaScript là một tập hợp các thuộc tính. Mỗi thuộc tính là một liên kết của một cặp tên (khóa) và giá trị
      • Tên và giá trị được phân tách bằng dấu hai chấm
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        13
      • Các cặp tên-giá trị được phân tách bằng dấu phẩy
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        24. Không cần dấu phẩy sau cặp tên-giá trị cuối cùng
      • Tên thuộc tính có thể là một chuỗi hoặc một số. Đối với tên chuỗi KHÔNG phải là số nhận dạng hợp lệ (số nhận dạng hợp lệ bắt đầu bằng bảng chữ cái, dấu gạch dưới hoặc ký hiệu đô la; và không chứa các ký tự đặc biệt như trống hoặc
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        15), bạn cần đặt tên bằng dấu ngoặc đơn hoặc dấu ngoặc kép. Mặt khác, các trích dẫn là tùy chọn. Ví dụ: Hãy lưu ý rằng nếu chuỗi tên thuộc tính là một mã định danh thích hợp, bạn có thể bỏ qua dấu ngoặc kép. Điều này thường được thực hiện bởi các nhà phát triển
      • Giá trị thuộc tính có thể là một chữ, một biến hoặc một biểu thức
      • Giá trị của một thuộc tính có thể lấy tất cả các loại JavaScript, bao gồm cả các nguyên hàm (chuỗi, số, boolean), đối tượng hoặc hàm. Thuộc tính được gọi là một phương thức, nếu nó chứa một chức năng. JavaScript không phân biệt giữa các biến và phương thức như các ngôn ngữ OO thông thường (Java/C++/C#). Một phương thức chỉ đơn giản là một thuộc tính nắm giữ một chức năng
      • Các đối tượng được tạo thông qua Trình khởi tạo đối tượng là các thể hiện của lớp
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        16
      Dấu phẩy ở cuối

      Dấu phẩy ở cuối (đôi khi được gọi là "dấu phẩy cuối") có thể hữu ích khi thêm các phần tử, tham số hoặc thuộc tính mới vào mã JavaScript. Nếu bạn muốn thêm thuộc tính mới, bạn có thể thêm một dòng mới mà không sửa đổi dòng cuối cùng trước đó nếu dòng đó đã sử dụng dấu phẩy ở cuối. Điều này làm cho các khác biệt kiểm soát phiên bản sạch hơn và việc chỉnh sửa mã có thể ít rắc rối hơn. Ngay từ đầu, JavaScript đã cho phép đặt dấu phẩy ở cuối mảng và sau đó thêm chúng vào đối tượng chữ (ES?), và gần đây hơn, vào tham số chức năng (ES?) và nhập có tên và xuất có tên (ES?)

      Người truy cập tài sản. Toán tử Dấu chấm và Chỉ mục (Dấu ngoặc vuông)

      Trong JavaScript, bạn có thể truy cập các thuộc tính của đối tượng thông qua một trong hai

      1. Toán tử dấu chấm (
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        17). ở dạng
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        18 hoặc
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        19, giống như Java/C++
      2. Toán tử chỉ số
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        65 (hoặc ký hiệu ngoặc đơn). Trong JavaScript, bạn cũng có thể sử dụng toán tử chỉ mục để truy cập các thuộc tính của đối tượng, ở dạng
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        21, giống như truy cập một mục mảng
      Toán tử
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      95

      Bạn có thể xóa một thuộc tính (bao gồm cả phương thức) thông qua "

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      23"

      Người điều hành
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      24

      Bạn có thể sử dụng toán tử

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      24 để kiểm tra xem một thể hiện cụ thể có thuộc về một lớp đối tượng cụ thể hay không. g. ,

      Phương pháp
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      26

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      27 trả về
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26 nếu
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      29 có giá trị cụ thể là
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      30

      Người điều hành
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      31

      Bạn có thể sử dụng toán tử

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      31 để kiểm tra xem một thuộc tính cụ thể có thuộc về một đối tượng hay không, ví dụ:

      ví dụ 1. Một đối tượng đơn giản, xóa và thêm thuộc tính

      Không giống như Java/C++, bạn có thể xóa hoặc thêm các thuộc tính mới vào một đối tượng JavaScript hiện có

      ví dụ 2. Một đối tượng có thuộc tính đối tượng

      Thuộc tính của một đối tượng có thể chứa các nguyên hàm (số, chuỗi). Nó cũng có thể giữ một đối tượng

      ví dụ 3. Một đối tượng có chức năng

      Thuộc tính của đối tượng JavaScript cũng có thể chứa một hàm (hoặc phương thức). Bạn có thể gán cho một hàm ẩn danh hoặc một hàm được đặt tên như trong ví dụ sau

      Trích dẫn hay không trích dẫn tên trong cặp tên-giá trị?

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      33 (của cặp
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      34) có thể lấy một chuỗi hoặc một số, e. g. ,
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      35

      Nhiều nhà phát triển không trích dẫn chuỗi

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      33, nếu đó là số nhận dạng hợp lệ (số nhận dạng hợp lệ bắt đầu bằng một bảng chữ cái,
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      37 hoặc
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      38; và không chứa các ký tự đặc biệt như trống và
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      15). Ví dụ:
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      40 giống như
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      41. Tuy nhiên, bạn cần trích dẫn một chuỗi
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      33 nếu nó KHÔNG phải là một mã định danh hợp lệ, e. g. ,
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      43

      Chuỗi

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      95 phải được trích dẫn;

      Toán tử dấu chấm vs. Toán tử chỉ mục (Dấu ngoặc vuông)

      Bạn có thể truy cập thuộc tính của một đối tượng thông qua toán tử dấu chấm hoặc toán tử chỉ mục. Toán tử dấu chấm thường được sử dụng vì nó ngắn gọn hơn và được sử dụng trong các ngôn ngữ hướng đối tượng thông thường. Nhưng toán tử chỉ mục cho phép truy cập vào các thuộc tính chứa các ký tự đặc biệt và lựa chọn các thuộc tính bằng cách sử dụng các biến, điều này không khả thi với toán tử dấu chấm. Ví dụ,

      Lặp lại tất cả các thuộc tính của một đối tượng

      Có ba cách để lặp qua tất cả các thuộc tính của một đối tượng

      1. vì. Trong. đi qua tất cả các thuộc tính có thể đếm được của một đối tượng và chuỗi nguyên mẫu của nó
      2. Mục tiêu. phím (obj). trả về một mảng gồm tất cả các tên thuộc tính có thể đếm được
      3. Mục tiêu. getOwnPropertyNames(obj). trả về một mảng của tất cả các tên thuộc tính

      For example,

      Người điều hành
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      45

      Thiết lập đối tượng mặc định cho một tập hợp các câu lệnh. Cú pháp là

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      9
      Giá trị theo nghĩa đen của
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21 so với
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18

      Như đã thảo luận trước đó

      • Một biến không được khai báo có loại
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        18 và giá trị của nó không thể được tham chiếu
      • Một biến được khai báo nhưng chưa được khởi tạo có kiểu là
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        18, với giá trị bằng chữ đặc biệt cũng là
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        18. [______75_______18 vừa là giá trị kiểu vừa là giá trị theo nghĩa đen. ]
      • Một đối tượng chưa phân bổ có giá trị theo nghĩa đen đặc biệt là
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        21. Hãy lưu ý rằng
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        21 là một đối tượng

      Trong các biểu thức boolean, cả

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21 và
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18 đều có giá trị là
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      27 (cùng với chuỗi rỗng
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      13, số
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      49 và
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      91, và boolean
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      27). Để kiểm tra giá trị
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21, hãy sử dụng
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      62, vì
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      63 (hoặc
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      93) trả về
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26 cho
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      21,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      18,
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      13,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      49,
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      91 và
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      27

      Các đối tượng JavaScript tích hợp

      JavaScript cung cấp nhiều đối tượng toàn cục hữu ích, chẳng hạn như

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      20,
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      43,
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      81 và
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      89

      Tôi sẽ thảo luận về một số đối tượng thường được sử dụng ở đây. Để biết thông số kỹ thuật chi tiết và các ví dụ về một đối tượng tích hợp sẵn, hãy kiểm tra "Tham khảo JavaScript chính"

      Tạo một đối tượng thông qua Constructor và Toán tử
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      47

      Tất cả các đối tượng dựng sẵn định nghĩa một cái gọi là hàm tạo, là một phương thức đặc biệt có cùng tên với đối tượng, để tạo các thể hiện mới. Để gọi hàm tạo, bạn cần sử dụng toán tử đặc biệt

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      47

      Ví dụ: đối tượng

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      43 có một phương thức khởi tạo có tên là
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      79. Để xây dựng một thể hiện mới của đối tượng
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      43

      Toán tử
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      31 và
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      24

      Như đã thấy từ các ví dụ trên, toán tử

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      31 trả về loại giá trị, có thể là loại nguyên thủy (chẳng hạn như số, chuỗi, boolean) hoặc đối tượng (bao gồm cả hàm)

      Toán tử

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      24 kiểm tra xem giá trị có phải là một thể hiện của một lớp không

      Phương pháp
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      43 và
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      86

      Các phương thức sau đây có sẵn cho tất cả các đối tượng JavaScript tích hợp

      • toString(). trả về một chuỗi mô tả về đối tượng này
      • giá trị của(). chuyển đổi đối tượng này thành một giá trị nguyên thủy, chẳng hạn như
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        74

      Mảng kết hợp và đối tượng
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      20

      Để biết phần giới thiệu về mảng, hãy đọc phần ""

      Ngày nay chúng ta thường tạo mảng thông qua Array Initializer dưới dạng

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      84. Tuy nhiên, vì mảng là đối tượng của lớp
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      20, nên chúng ta cũng có thể xây dựng một mảng bằng cách gọi hàm tạo
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      91 với toán tử
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      47. Điều này phức tạp hơn và do đó ngày nay ít được sử dụng hơn (nhưng có thể xuất hiện trong các mã và sách cũ)

      For example,

      Mảng kết hợp là một "Đối tượng" chung, không phải là Đối tượng "Mảng"

      Để biết phần giới thiệu về mảng, hãy đọc phần ""

      JavaScript không thực sự hỗ trợ mảng kết hợp, nhưng cho phép bạn thêm các thuộc tính vào một đối tượng, sử dụng cú pháp mảng kết hợp và toán tử chỉ mục. Nói cách khác,

      Sử dụng một đối tượng mảng cho mảng kết hợp

      Trong JavaScript, chúng ta thường tạo một mảng kết hợp bằng cách sử dụng một đối tượng chung (thông qua Trình khởi tạo đối tượng). Bạn cũng có thể tạo một mảng kết hợp thông qua hàm tạo

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      20. Ví dụ như,

      Trong trường hợp này, các thuộc tính bổ sung được thêm vào đối tượng

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      20 dưới dạng thuộc tính của đối tượng. Mảng có
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      93 của 0, vì
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      93 chỉ phản ánh các chỉ mục số. Không nên sử dụng một đối tượng mảng cho mảng kết hợp. Tôi mô tả ở đây cho đầy đủ

      Đối tượng
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      81 so với
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 Loại nguyên thủy

      JavaScript cung cấp loại

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 nguyên thủy. Nó cũng cung cấp một lớp
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      81 như một lớp bao bọc cho nguyên thủy
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30. Read "" for primitive
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30

      Một chuỗi có thể được tạo theo hai cách

      1. gán trực tiếp một chuỗi ký tự ở dạng
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        03 hoặc
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        04 cho một biến, dẫn đến một nguyên hàm
        
        
        
        
          
          JavaScript Example: Variables and functions prompt() and confirm()
          
        
        
          

        Welcome to JavaScript!

        30
      2. gọi hàm tạo đối tượng
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        81 để tạo đối tượng
        
        
        
        
          
          JavaScript Example: Loop
        
        
          

        Testing Loop

        81

      For examples,

      Cái trước là một

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 nguyên thủy, trong khi cái sau là một đối tượng
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      81

      Đối tượng

      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      81 là một trình bao bọc cho chuỗi nguyên thủy, cung cấp nhiều phương thức hữu ích để thao tác với chuỗi. Thấy ""

      Nguyên hàm

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      30 là "hộp tự động" cho đối tượng
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      81, khi bạn gọi phương thức của đối tượng
      
      
      
      
        
        JavaScript Example: Loop
      
      
        

      Testing Loop

      81. For example,

      The
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      89 Object vs
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 Primitive Type

      JavaScript provides primitive

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 type. It also provide a
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      89 class as a wrapper class for primitive
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74. Read "" for primitive
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74

      The

      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      89 object is a wrapper object for primitive
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74, which provides many properties and methods. Again, a
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      74 primitive is auto-box to a
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      89 object, when you invoke a
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      89 object's operation. See ""

      The
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      25 Object vs boolean
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      26 Type

      JavaScript provides primitive

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      78 type. It also provide a
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      25 class as a wrapper class for primitive
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      78. Read "" for primitive
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      78

      The

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      25 object is a wrapper object for primitive
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      78, which provides many properties and methods

      The
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      43 Object

      Commonly-used constructors

      • new Date(). constructs a
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        43 object with the current date and time
      • Ngày mới (dateTimeStr). constructs a
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        43 object with the given date-time string in an acceptable form (e. g. , "Month, day, year, hours. minutes. seconds")
      • new Date(year, Month, day). where month is 0-11 for Jan to Dec
      • new Date(year, Month, day, hours, minutes, seconds, milliseconds)

      Commonly-used methods

      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        62, setDate(), getMonth(), setMonth(), getFullYear(), setFullYear(). get/set the date (1-31), month (0-11 for Jan to Dec), year (4-digit year)
      • getDay(). get the day of the week (0-6 for Sunday to Saturday)
      • getHours(), setHours(), getMinutes(), setMinutes(), getSeconds(),
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        37. get/set the hours/minutes/seconds
      • getTime(), setTime(). get/set the number of milliseconds since January 1, 1970, 00. 00. 00

      The
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      38 Object

      Commonly-used properties

      • E, PI. Euler’s constant and
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        39
      • LN2, LN10, LOG2E, LOG10E. ln(2), ln(10), log2(e), log10(e)
      • SQRT2, SQRT1_2. square root of 2 and one-half

      Commonly-used methods

      • abs(x)
      • sin(a), cos(a), tan(a), asin(x), acos(x), atan(x), atan2(x,y)
      • cell(x), floor(x), round(x)
      • exp(x), log(x), pow(base,exp), sqrt(x)
      • max(x,y), min(x,y)
      • random(). returns a pseudo-random number between 0 and 1

      The
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      40 Object

      For an introduction to functions, read "" section

      Mỗi chức năng trong JavaScript thực sự là một đối tượng

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      40

      Function Variable

      A variable can be assigned a

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      40 object (called function variable), which takes a special object type called
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      88. [In JavaScript, an object's type is either
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      88 (for
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      40 object) or
      
      
      
      
        
        JavaScript Example: Variables and functions prompt() and confirm()
        
      
      
        

      Welcome to JavaScript!

      20 (for any object not a
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      40). ]

      For example,

      Anonymous Function

      If a function is called only once, you can use an anonymous function, omitting the function name. Anonymous functions are commonly-used as event handler, e. g. ,

      You can define a inline (anonymous) function and assign it to a variable as follows

      Function Constructor

      Besides using

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      88 keyword, you can also use the
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      40 constructor (with
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      47 operator) to define a
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      40 object. This is not easily understood and, hence, not recommended

      The syntax for

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      40 constructor is

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      0

      The
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      53 object

      Formatting Console Output

      console. log('formattingStr', arg1, arg2, . ). You can use C's

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      14-like syntax with format specifiers (such as
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      55,
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      56,
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      57) to format the output string

      You can use %c to apply CSS rules, e. g. ,

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      1
      Logging Methods

      JavaScript supprots 5 levels of logging, in the order of severity

      1. console. error()
      2. console. warn()
      3. console. log()
      4. console. info()
      5. console. debug()
      Các phương pháp gỡ lỗi khác
      • bảng điều khiển. dấu vết(). in dấu vết ngăn xếp hiện tại
      • bảng điều khiển. dir(). displays an interactive list of the properties of the specified JavaScript object
      • console. dirxml(). displays in XML the properties of the specified JavaScript object
      • console. assert(). writes an error message to the console if the assertion is false; otherwise do nothing
      Time Measurements
      • console. time([label]). starts a new timer
      • console. timeEnd([label]). kết thúc bộ hẹn giờ và trả về thời gian tính bằng mili giây kể từ khi bộ hẹn giờ bắt đầu
      • console. timeLog([label]). returns the elapsed time since the timer started

      More on Objects

      Prototype-based vs. Class-based OO

      JavaScript's OO is prototype-based, instead of class-based like Java/C++/C#

      A class-based OO language (such as Java/C++/C#) is founded on concepts of class and instance. A class is a blue-print or template of things of the same kind. An instance is a particular realization of a class. For example, "

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      58" is a class; and "
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      59" and "
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      60" are instances of the "
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      58" class. In a class-based OO language, you must first write a class definition, before you can create instances based on the class definition. The instances created have exactly the same properties and methods as the class - no more, and no less

      On the other hand, a prototype-based OO language (such as JavaScript) simply has objects (or instances). A new object can be constructed based on an existing object as prototype. There is no class definition, and hence, they are also called class-less OO languages

      In JavaScript

      • Every JavaScript object has a prototype. The prototype is also an object. A JavaScript object is created from a prototype object and gets its initial properties from the prototype
      • Every JavaScript object has an internal property called
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        62, which holds its prototype object. When you define a new object, its
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        62 is set to a built-in object called
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        64. In other words, the new object uses
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        64 as its prototype, and gets its initial properties from
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        64. The
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        62 property is not enumerable, i. e. , it would not shown up in the
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        77 loop
      Example. Object Prototype

      Notes

      • Prototype Chain. In the above example,
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        69's prototype is
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        64, whose prototype is
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        21. This form a prototype chain of
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        72.
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        69 defines two own properties.
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        74 and
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        75. When you invoke
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        76, which cannot be found in
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        69, but found in its prototype
      • Object. getPrototypeOf(obj). Instead of using
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        78 property used in above example, which is NOT in the official JavaScript specification, you should use
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        79 method to get the prototype of an object

      Defining Your Own Custom Objects via a Constructor

      In JavaScript, you can create your own custom objects by defining a constructor. A constructor is simply a function, which can be invoked via the

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      47 operator to create and initialize new objects. Recall that JavaScript is prototype-based and class-less. A new object is created from a prototype object, and gets its initial properties from this prototype object. The constructor function provides the prototype to create and initialize new instances (to be explained later)

      Theo quy ước, tên hàm tạo bắt đầu bằng một chữ cái viết hoa

      Keyword
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      09

      "

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      09" refers to the current object.
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      83 refers to the property of this object

      Example. Object Constructor Function

      Let us define a constructor for our custom

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      84 objects, with properties
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      74,
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      86,
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      87 and
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      88

      Làm thế nào nó hoạt động?
      1. Properties (including methods) are declared inside the constructor via
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        83, which can then be initialized
      2. Methods can be declared inside the constructor via
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        90. There are a few ways to provide the method's definition
        1. Define an ordinary
          My First JavaScript says
          

          Hello world, again!

          This document was last modified on mm/dd/yyyy hh:mm:ss.

          88, and assign the
          
          
          
          
            
            JavaScript Example: User-defined function and onclick Event Handler
            
          
          
            

          Example on event and user-defined function

          92 (without parentheses, which is a
          My First JavaScript says
          

          Hello world, again!

          This document was last modified on mm/dd/yyyy hh:mm:ss.

          88 type) to
          
          
          
          
            
            JavaScript Example: User-defined function and onclick Event Handler
            
          
          
            

          Example on event and user-defined function

          90, as in the
          
          
          
          
            
            JavaScript Example: User-defined function and onclick Event Handler
            
          
          
            

          Example on event and user-defined function

          88
        2. Assign
          
          
          
          
            
            JavaScript Example: User-defined function and onclick Event Handler
            
          
          
            

          Example on event and user-defined function

          90 to an inline function, as in the
          
          
          
          
            
            JavaScript Example: User-defined function and onclick Event Handler
            
          
          
            

          Example on event and user-defined function

          87
        3. Invoke the
          
          
          
          
            
            JavaScript Example: User-defined function and onclick Event Handler
            
          
          
            

          Example on event and user-defined function

          40 constructor with
          My First JavaScript says
          

          Hello world, again!

          This document was last modified on mm/dd/yyyy hh:mm:ss.

          47 operator (rarely-used).
          
          
          
          
            
            JavaScript Example: The Date object
            
          
          
          
          2
      3. To invoke a method, use
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        00
      4. The
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        43 is a special method, which returns a string description of this object. The
        
        
        
        
          
          JavaScript Example: The Date object
          
        
        
        
        43 will be implicitly invoked if an object is passed into the
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        9,
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        56 or
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        00 operator (like Java)

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      62 and
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      07

      Revisit the
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      47 Operator

      In JavaScript, the new constructor(args) call does the followings

      1. Create a new generic object using built-in root
        for ( initialization ; test ; post-processing ) {
           body ;
        }
        16 as prototype
      2. Assign this newly created object to
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        09 variable
      3. Run the constructor function, which typically adds properties to
        alert('hello, world')
        document.write('hello world, again')
        console.log('hello world, again and again')
        09
      4. Set the internal property
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        62 to
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        13 (in the above example,
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        14). The
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        62 property is not enumerable (i. e. , it would not shown up in the
        if ( condition-1 ) {
           block-1 ;
        } else if ( condition-2 ) {
           block-2 ;
        } else if ( condition-3 ) {
           block-3 ;
        ......
        ......
        } else {
           block-n ;
        }
        77 loop). It is used to maintain the so called "prototype chain" of the objects
      5. Return the newly created object

      Take note that you can invoke the constructor function WITHOUT the

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      47 operator, e. g. ,
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      18. In this case, the constructor will be run as per ordinary function. There will not be any association of
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      09 and
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      62 properties; and the return value will depend on the function codes

      Try tracing the object created in the above example via Chrome's Developer Tools, which could display the

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      62 internal property

      Another Example
      Constructor's
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      07 Property

      All the JavaScript constructor function objects (in fact, all function objects) have a special property called

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      07. Theo mặc định, nó chứa một đối tượng có thể được sử dụng làm nguyên mẫu để tạo đối tượng mới

      Trong ví dụ về

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      84, hàm khởi tạo
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      84 có một
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      14, giữ một đối tượng
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      84 được sử dụng làm đối tượng nguyên mẫu. Khi một đối tượng
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      84 mới được tạo thông qua toán tử
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      47, thuộc tính
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      62 của đối tượng mới được tạo được đặt thành
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      14

      Thêm các thuộc tính được chia sẻ vào thuộc tính
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      07 của Constructor

      The constructor's

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      07 is used to implement shared properties (typically shared methods) for all the objects it prototyped. In JavaScript, you can add properties dynamically during runtime into
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      07. The added properties/methods will be available to all the objects (new as well as existing objects). For example,

      When you reference a property, JavaScript first checks if the property exists locally (or own property); otherwise, it checks the prototype chain through the

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      62 property. Recall that the
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      36 call sets the
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      62 to
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      13. Hence, properties added into
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      13 are available to (and shared by) all the objects prototyped by this constructor

      In practice, we defines methods (and static variables) in

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      13 to be shared by all objects; while each object maintains its own properties (instance variables)

      Looking up the Prototype Chain

      Objects in JavaScipt form prototype chains. Trong ví dụ trên, một chuỗi nguyên mẫu là

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      41

      When you reference an object property, JavaScript follow these steps to locate the property

      1. Check if the property exists locally (i. e. , own property)
      2. Otherwise, check the
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        62 property. This continues recursively up the prototype chain. The process is called "lookup in the prototype chain"

      Hence, in the above example, all the properties in

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      14 and
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      64 are inherited by
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      45

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      24 Operator

      Every object has a

      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      62 object property (except
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      16); every constructor function has a
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      07 property. So objects can be related by 'prototype inheritance' to other objects. You can test for inheritance by comparing an object's
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      62 to the constructor's
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      07. JavaScript provides a shortcut. the
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      24 operator tests an object against a function and returns
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      26 if the object inherits from the function prototype. For example,

      [LÀM]

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      54

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      54 lets you create a new object based on the given prototype object. It simply sets the
      
      
      
      
        
        JavaScript Example: User-defined function and onclick Event Handler
        
      
      
        

      Example on event and user-defined function

      62 to the given prototype object, so that all properties of the prototype are available to the new object. Using
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      54, You do NOT need to define a constructor function and run
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      58 to create new objects

      Inheritance via Prototype Chain

      You can implement inheritance in JavaScript via the prototype chain. For example,

      How It Works

      [LÀM]

      Getter and Setter

      In languages like Java, you can declare a variable to be

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      59 and define
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      60 getter/setter to access the
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      59 variable. JavaScript does not really support
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      59 access?. But you can also define ordinary methods
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      63 or
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      64 as getter/setter like Java

      Moreover, in JavaScript, you can define getter/setter as properties instead of methods in one of the following two ways

      1. via built-in functions
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        65 or
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        66;
      2. inside the "object initializer" via keywords
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        67 and
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        68
      Example 1. Define Getters/Setters via
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      65 or
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      66

      Notes

      1. The
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        71 allows you to define multiple properties; while
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        72 for a single property
      2. You invoke the getters/setters like properties with assignment operator, instead of via function call
      Example 2. Define Getter/Setter inside the Object Initializer

      Notes

      1. The getter/setter are defined inside Object Initializer via keywords
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        67 and
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        68 with a rather strange syntax, as shown in the example

      for ( initialization ; test ; post-processing ) {
         body ;
      }
      16's Properties

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      76

      All JavaScript objects inherited a special property called

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      77, which contains a reference to the function that created the object. For example,

      [TODO] more Object's properties

      Document Object Model (DOM) API for JavaScript

      Document Object Model (DOM), is a standard API that allows programmers to access and manipulate the contents of an HTML/XHTML/XML document dynamically inside their program. It models an HTML/XHTML/XML document as an object-oriented, tree-like structure, known as a DOM-tree, consisting of nodes resembling the tags (elements) and contents. DOM also provides an interface for event handling, allowing you to respond to user's or browser's action

      DOM API is implemented in many languages such as Java, JavaScript, Perl, and ActiveX. DOM API specification is maintained by W3C. DOM has various levels

      • DOM Level 0 (DOM0) (Pre-W3C). obsolete
      • DOM Level 1 (DOM1) (W3C Oct 1998). obsolete
      • DOM Cấp 2 (DOM2) (W3C tháng 11 năm 2000) và DOM Cấp 2 HTML (HTML DOM2) (W3C tháng 1 năm 2003)
      • DOM Level 3 (DOM3) (W3C Apr 2004). yet to be fully supported by browsers

      jQuery is much better in selecting and manipulating DOM element. You should use jQuery in production. I keep these sections here for completeness

      Finding and Selecting Elements

      In JavaScript, we often use DOM API to select elements within the current document, so as to access or manipulate their contents. The most commonly-used functions are

      FunctionDescriptionExample
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      78Returns the element with the given unique
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      19.
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      3
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      80Returns an array of elements with the given tag name.
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      4
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      81Returns an array of elements with the given
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      82 attribute name.
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      5
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      83Returns an array of elements with the given
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      33 attribute.
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      6

      You can use wildcard

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      85 in
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      86 to select all the elements, e. g. ,

      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      7

      The above functions select element(s) based on the unique

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      19,
      for ( initialization ; test ; post-processing ) {
         body ;
      }
      33 attribue and tag-name. HTML 5 further defines two function that can select elements based on
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      82 attribute (which is used extensively by CSS in the class-selector)

      FunctionDescriptionExample
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      90Returns the first element with the given
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      82 attribute.
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      8
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      92Returns an array of elements with the given
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      82 attribute.
      
      
      
      
        
        JavaScript Example: The Date object
        
      
      
      
      8

      Beside the above selection functions, there are many other selection functions available. However, I strongly recommend that you stick to the above functions. I listed below the other function below for completeness

      1. 
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        94 returns an array of all
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        95 elements, same as
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        96
      2. 
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        97. return an array of allelements
      3. 
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        98 and
        
        
        
        
          
          JavaScript Example: Events onload, onmouseover and onmouseout
          
        
        
          

        "Hello" alert Box appears after the page is loaded.

        Point your mouse pointer here!!!

        99. return all the hyperlinks
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        6and anchors
        
        
        
        
          
          JavaScript Example: User-defined function and onclick Event Handler
          
        
        
          

        Example on event and user-defined function

        6elements. [To confirm. ]

      Manipulating Element's Content through the
      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      42 Property

      Bạn có thể truy cập và sửa đổi nội dung của một phần tử thông qua thuộc tính "_______58_______42", chứa tất cả các văn bản (bao gồm các thẻ lồng nhau) trong phần tử này

      For example,

      "

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      42" is the most convenient way to access and manipulate an element's content. Tuy nhiên, nó không phải là một tiêu chuẩn W3C, nhưng nó được hầu hết các trình duyệt hỗ trợ

      Cây DOM và nút

      W3C khuyên bạn nên truy cập và thao tác các phần tử HTML thông qua cây DOM và các nút. Tuy nhiên, nó thực sự là quá mức cần thiết để viết các JavaScript đơn giản. Tôi trình bày chúng ở đây một lần nữa cho đầy đủ

      Khi một trình duyệt tải một trang HTML, nó sẽ xây dựng mô hình DOM một trang web theo cấu trúc giống như cây phân cấp bao gồm các nút, giống như cấu trúc HTML của nó

      Một ví dụ về tài liệu HTML với cây DOM tương ứng được đưa ra sau. Take note that the text content of an element is stored in a separate Text node

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      0
      Làm cách nào để nhận giá trị biến JavaScript trong PHP mà không cần làm mới?

      Load the web page onto Firefox, and use the firebug to inspect the DOM tree.

      A DOM-tree comprises the following types of nodes

      1. Document Node. the root node representing the entire HMTL document
      2. Element node. represents an HTML element (or tag). Một nút phần tử có thể có các nút con, có thể là nút phần tử hoặc nút văn bản. Element node may also have attributes
      3. Text Node. contains the text content of an element
      4. Others. such as comment, attribute

      A DOM node has these properties

      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        005. contain the name of the node, which is read-only. The
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        005 for an Element node is the tag-name;
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        005 for the Document node is
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        008;
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        005 for Text nodes is
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        010
      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        011. contain the value of the node.
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        011 for Text node is the text contained;
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        011 for Element node is undefined
      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        014. an integer indicating the type of the node, e. g. , Element (1), Attribute (2), Text (3), Comment (8), Document (9)
      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        015. reference to parent node. There is only one parent node in a tree structure
      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        016. array (or node-list) of child nodes
      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        017,
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        018. reference to the first and last child node
      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        019,
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        020. reference to the previous and next sibling in the same level

      Take note of the difference between singular and plural terms. For example,

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      015 refer to the parent node (each node except root has one and only one parent node),
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      016 holds an array of all the children nodes

      The root node of the DOM tree is called

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      6. The root node
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      6 has only one child, called
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      025, representing the tag, and it acts as the parent for two child nodes representing and tags, which in turn will have other child nodes. You can also use a special property called
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      026 to access the tag directly

      For example, you can use the following node property to access the Text node

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      027 in the above example

      Example

      The following JavaScript lists all the nodes in the section, in a depth-first search manner, via a recursive function

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      1
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      2

      Accessing the HTML element via Node interface may not be too useful nor practical for JavaScript applications, as you need to know the actual topological structure of the DOM-tree. Furthermore, some browsers (e. g. , firefox) may create extra Text nodes to contain the white spaces between tags

      Text Node

      DOM models the texts enclosed by HTML tags as a separate text node. It cannot have child node. To retrieve the text content, you could the property

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      011. For example,

      Attribute Properties

      Để truy cập thuộc tính của nút Phần tử có tên là

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      029, bạn có thể sử dụng

      • property
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        030, where
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        031 is the name of the attribute, or
      • methods
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        032 and
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        033

      For example,

      Attribute
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      034 (for CSS)

      Element has a property called style, which models CSS style with CSS properties such as

      alert('hello, world')
      document.write('hello world, again')
      console.log('hello world, again and again')
      07 and
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      036. For example,

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      3

      Manipulating Nodes

      A Node object has these functions

      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        037. returns
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        26 if this node has at least one child node
      • Manipulating child node
        • My First JavaScript says
          

          Hello world, again!

          This document was last modified on mm/dd/yyyy hh:mm:ss.

          039. insert a node before an existing child node
        • My First JavaScript says
          

          Hello world, again!

          This document was last modified on mm/dd/yyyy hh:mm:ss.

          040. replace an existing child node
        • My First JavaScript says
          

          Hello world, again!

          This document was last modified on mm/dd/yyyy hh:mm:ss.

          041. remove the specified child node
        • My First JavaScript says
          

          Hello world, again!

          This document was last modified on mm/dd/yyyy hh:mm:ss.

          042. append the given node as the last child
      • My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        043
        My First JavaScript says
        

        Hello world, again!

        This document was last modified on mm/dd/yyyy hh:mm:ss.

        044
      Creating a New Element (
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      045) and Text Node (
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      046), Appending a Node (
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      047)

      To create new text node, you can use

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      048 to create a standalone text-node, followed by an
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      049
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      050 to append the text node to an element

      Similarly, you can use

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      051 to create a stand-alone element, followed by an
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      052 to append the created element into an existing element

      For example, we shall create a new text node, as a child of a new

      element. We shall then append the new

      element as the last child of

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      4
      Inserting a new Node (
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      053)
      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      4
      Replacing a Node (
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      054)

      Change the last line to

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      055

      Deleting a Node (
      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      056)

      You can remove a child node from a parent node via

      My First JavaScript says
      

      Hello world, again!

      This document was last modified on mm/dd/yyyy hh:mm:ss.

      057

      For example, let remove the last

      from

      if ( condition-1 ) {
         block-1 ;
      } else if ( condition-2 ) {
         block-2 ;
      } else if ( condition-3 ) {
         block-3 ;
      ......
      ......
      } else {
         block-n ;
      }
      6

      The
      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      6 object

      The

      
      
      
      
        
        JavaScript Example: Events onload, onmouseover and onmouseout
        
      
      
        

      "Hello" alert Box appears after the page is loaded.

      Point your mouse pointer here!!!

      6 object is the root node of the DOM-tree. It can be used to access all the elements in an HTML page

      Làm cách nào để chuyển biến JavaScript trong PHP mà không cần gửi?

      Use ajax to pass the variables . (Without a page refresh) Pass the JavaScript variable to the URL, then use the PHP GET or REQUEST method to get the variable's value. (Page will be refreshed or redirected to some other page)

      How to get value from JavaScript to PHP?

      The way to pass a JavaScript variable to PHP is through a request . This type of URL is only visible if we use the GET action, the POST action hides the information in the URL. Server Side(PHP). Trên trang PHP phía máy chủ, chúng tôi yêu cầu dữ liệu được gửi theo biểu mẫu và hiển thị kết quả. $result = $_GET [ 'dữ liệu' ];

      Làm cách nào chúng tôi có thể lưu trữ dữ liệu biến JavaScript trong biến PHP?

      Cách lý tưởng nhất để chuyển giá trị biến JavaScript trong biến PHP là chuyển biến JS cho lệnh gọi AJAX . Nhưng để làm điều này, chúng ta cần tải lại trang có biến trong tham số $_GET và truy cập biến trong PHP bằng cách sử dụng $_GET['a'].

      Làm cách nào để chuyển giá trị biến jquery sang PHP mà không cần Ajax?

      Tạo thẻ đầu vào ẩn trong HTML, sau đó đặt giá trị của nó dưới dạng chuỗi JSON bằng jquery. Tiếp theo, bất cứ khi nào bạn cần dữ liệu đó, chỉ cần gọi hàm PHP trả về giá trị của thẻ đầu vào. Bây giờ bạn có thể chuyển đổi dữ liệu JSON và lưu trữ nó trong biến PHP