Hướng dẫn lập trình javascript cơ bản
Kiểu dữ liệu JavaScript
Một trong những nét đặc thù chủ yếu nhất của một ngôn ngữ chương trình là tập hợp các kiểu dữ liệu nó hỗ trợ. Đây là kiểu các giá trị mà có thể được biểu diễn và được thao tác trong ngôn ngữ chương trình.
JavaScript cho bạn làm việc với 3 kiểu dữ liệu gốc sau:
-
Số, ví dụ: 123, 120.50, …
-
Chuỗi văn bản, ví dụ: "This text string", …
-
Boolean ví dụ: true hoặc false.
JavaScript cũng định nghĩa hai kiểu dữ liệu thông thường, null và undefined, mỗi kiểu này chỉ định nghĩa một giá trị đơn. Bổ sung cho những kiểu dữ liệu này, JavaScript hỗ trợ một kiểu dữ liệu hỗn hợp được gọi là object (đối tượng). Chúng ta sẽ bàn luận chi tiết về các đối tượng trong một chương riêng.
Ghi chú − Java không phân biệt giá trị integer và giá trị dấu chấm động (floating-point). Tất cả các số trong JavaScript được biểu diễn như là giá trị dấu chấm động. JavaScript biểu diễn các số sử dụng định dạng dấu chấm động 64 bit được định nghĩa bởi chuẩn IEEE 754.
Các biến trong JavaScript
Giống như nhiều ngôn ngữ chương trình khác, JavaScript có các biến. Biến có thể được xem là một nơi chứa (container) được đặt tên. Bạn có thể đặt dữ liệu vào trong nơi chứa này và sau đó tham chiếu đến dữ liệu này một cách đơn giản là đặt tên cho nơi chứa.
Trước khi bạn sử dụng một biến trong chương trình JavaScript, bạn phải khai báo nó. Biến được khai báo với từ khóa var như sau:
<script type="text/javascript">
<!--
var money;
var name;
//-->
</script>
Bạn cũng có thể khai báo nhiều biến với cùng từ khóa var như sau:
<script type="text/javascript">
<!--
var money, name;
//-->
</script>
Lưu giữ một giá trị trong một biến được gọi là khởi tạo biến. Bạn có thể khởi tạo biến tại thời điểm tạo biến hoặc tại thời điểm sau khi bạn cần biến đó.
Ví dụ, bạn có thể tạo một biến tên money và gán giá trị 2000.50 cho nó sau đó. Với biến khác, bạn có thể gán một giá trị tại thời điểm khởi tạo như sau:
<script type="text/javascript">
<!--
var name = "Ali";
var money;
money = 2000.50;
//-->
</script>
Ghi chú − Chỉ sử dụng từ khóa var cho khai báo hoặc khởi tạo biến, một lần cho bất kỳ tên biến nào trong tài liệu. Bạn không nên khai báo lại cùng một biến hai lần.
JavaScript là ngôn ngữ untyped (không định kiểu). Nghĩa là một biến JavaScript có thể giữ một giá trị của bất kỳ kiểu dữ liệu nào. Không giống nhiều ngôn ngữ khác, bạn không phải nói cho JavaScript trong suốt quá trình khai báo biến về kiểu giá trị mà biến đó giữ. Kiểu giá trị của biến có thể thay đổi trong suốt quá trình thực thi một chương trình và JavaScript chăm sóc nó một cách tự động.
Phạm vi biến trong JavaScript
Phạm vi của một biến là vùng chương trình trong đó nó được định nghĩa. Biến JavaScript chỉ có hai phạm vi sau:
-
Biến Global − Một biến Global có phạm vi chung, nghĩa là nó có thể được định nghĩa bất cứ đâu trong JavaScript code.
-
Biến Local − Một biến Local sẽ chỉ nhìn thấy trong một hàm, nơi nó được định nghĩa. Các tham số hàm luôn luôn là nội bộ cho hàm đó.
Trong thân của một hàm, một biến Local có quyền ưu tiên cao hơn biến Global với cùng một tên. Nếu bạn khai báo một biến Local hoặc tham số hàm với cùng tên với biến Global, bạn ẩn biến Global đó một cách hiệu quả. Bạn xem ví dụ sau:
<script type="text/javascript">
<!--
var myVar = "global"; // Khai báo một biến Global
function checkscope( ) {
var myVar = "local"; // Khai báo một biến Local
document.write(myVar);
}
//-->
</script>
Nó sẽ cho kết quả sau:
local
Tên biến trong JavaScript
Trong khi đặt tên biến trong JavaScript, bạn nên nhớ các quy tắc sau:
-
Bạn không nên sử dụng bất kỳ từ khóa dành riêng nào cho một tên biến. Những từ khóa này được đề cập trong phần tới. Ví dụ, các tên biến break hoặc boolean là không hợp lệ.
-
Tên biến JavaScript không nên bắt đầu với các số (0-9). Chúng phải bắt đầu với một chữ cái hoặc ký tự dấu gạch dưới. Ví dụ, 123test là tên biến không hợp lệ nhưng _123test là hợp lệ.
-
Tên biến JavaScript là phân biệt kiểu chữ. Ví dụ, Name và name là hai biến khác nhau.
Từ khóa dành riêng trong JavaScript
Bảng dưới đây liệt kê danh sách các từ khóa dành riêng trong JavaScript. Chúng không thể được sử dụng như là các biến, hàm, phương thức, nhãn vòng lặp, hoặc bất kỳ tên đối tượng nào khác trong JavaScript.
abstract boolean break byte case catch char class const continue debugger default delete do double |
else enum export extends false final finally float for Hàm goto if implements import in |
instanceof int interface long native new null package private protected public return short static super |
switch synchronized this throw throws transient true try typeof var void volatile while with |