Các loại dữ liệu JavaScript
Các biến JavaScript có thể chứa các kiểu dữ liệu khác nhau: số, chuỗi, đối tượng và hơn thế nữa:
let length = 16; // Number
let lastName = "Johnson"; // String
let x = {firstName:"John", lastName:"Doe"}; // Object
Khái niệm về các kiểu dữ liệu
Trong lập trình, kiểu dữ liệu là một khái niệm quan trọng.
Để có thể hoạt động trên các biến, điều quan trọng là phải biết một số điều về kiểu.
Không có kiểu dữ liệu, máy tính không thể giải quyết vấn đề này một cách an toàn:
let x = 16 + "Volvo";
Có ý nghĩa gì khi thêm "Volvo" vào mười sáu không? Nó sẽ tạo ra một lỗi hay nó sẽ tạo ra một kết quả?
JavaScript sẽ coi ví dụ trên là:
let x = "16" + "Volvo";
Khi thêm một số và một chuỗi, JavaScript sẽ coi số đó là một chuỗi.
Thí dụ
let x = 16 + "Volvo";
Thí dụ
let x = "Volvo" + 16;
JavaScript đánh giá các biểu thức từ trái sang phải. Các trình tự khác nhau có thể tạo ra các kết quả khác nhau:
JavaScript:
let x = 16 + 4 + "Volvo";
Kết quả:
20Volvo
JavaScript:
let x = "Volvo" + 16 + 4;
Kết quả:
Volvo164
Trong ví dụ đầu tiên, JavaScript coi 16 và 4 là số, cho đến khi nó đạt đến "Volvo".
Trong ví dụ thứ hai, vì toán hạng đầu tiên là một chuỗi, nên tất cả các toán hạng đều được coi là chuỗi.
Các loại JavaScript là động
JavaScript có các kiểu động. Điều này có nghĩa là cùng một biến có thể được sử dụng để chứa các kiểu dữ liệu khác nhau:
Thí dụ
let x; // Now x is undefined
x = 5; // Now x is a Number
x = "John"; // Now x is a String
Chuỗi JavaScript
Chuỗi (hoặc chuỗi văn bản) là một chuỗi các ký tự như "John Doe".
Chuỗi được viết với dấu ngoặc kép. Bạn có thể sử dụng dấu ngoặc kép hoặc đơn:
Thí dụ
let carName1 = "Volvo XC60"; // Using double quotes
let carName2 = 'Volvo XC60'; // Using single quotes
Bạn có thể sử dụng dấu ngoặc kép bên trong một chuỗi, miễn là chúng không khớp với dấu ngoặc kép xung quanh chuỗi:
Thí dụ
let answer1 = "It's alright";
// Single quote inside double quotes
let answer2 = "He is called 'Johnny'";
// Single quotes inside double quotes
let answer3 = 'He is called "Johnny"';
// Double quotes inside single quotes
Bạn sẽ tìm hiểu thêm về chuỗi ở phần sau trong hướng dẫn này.
Số JavaScript
JavaScript chỉ có một loại số.
Các số có thể được viết bằng hoặc không có số thập phân:
Thí dụ
let x1 = 34.00; // Written with decimals
let x2 = 34; // Written without decimals
Các số cực lớn hoặc cực nhỏ có thể được viết bằng ký hiệu khoa học (hàm mũ):
Thí dụ
let y = 123e5; // 12300000
let z = 123e-5; // 0.00123
Bạn sẽ tìm hiểu thêm về các con số ở phần sau trong hướng dẫn này.
JavaScript Booleans
Boolean chỉ có thể có hai giá trị: true
hoặc false
.
Thí dụ
let x = 5;
let y = 5;
let z = 6;
(x == y)
// Returns true
(x == z) // Returns
false
Boolean thường được sử dụng trong thử nghiệm có điều kiện.
Bạn sẽ tìm hiểu thêm về kiểm thử có điều kiện ở phần sau của hướng dẫn này.
Mảng JavaScript
Mảng JavaScript được viết bằng dấu ngoặc vuông.
Các mục của mảng được phân tách bằng dấu phẩy.
Đoạn mã sau khai báo (tạo) một mảng được gọi cars
, chứa ba mục (tên xe):
Thí dụ
const cars = ["Saab", "Volvo", "BMW"];
Chỉ mục mảng dựa trên 0, có nghĩa là mục đầu tiên là [0], mục thứ hai là [1], v.v.
Bạn sẽ tìm hiểu thêm về mảng ở phần sau trong hướng dẫn này.
Đối tượng JavaScript
Các đối tượng JavaScript được viết bằng dấu ngoặc nhọn {}
.
Các thuộc tính của đối tượng được viết dưới dạng các cặp tên: giá trị, cách nhau bằng dấu phẩy.
Thí dụ
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Đối tượng (người) trong ví dụ trên có 4 thuộc tính: firstName, lastName, age và eyeColor.
Bạn sẽ tìm hiểu thêm về các đối tượng ở phần sau của hướng dẫn này.
Loại toán tử
Bạn có thể sử dụng typeof
toán tử JavaScript để tìm loại biến JavaScript.
Toán tử typeof
trả về kiểu của một biến hoặc một biểu thức:
Thí dụ
typeof "" // Returns
"string"
typeof "John" // Returns
"string"
typeof "John Doe" // Returns
"string"
Thí dụ
typeof 0 // Returns
"number"
typeof 314 // Returns
"number"
typeof 3.14 // Returns
"number"
typeof (3) // Returns
"number"
typeof (3 + 4) // Returns
"number"
Bạn sẽ tìm hiểu thêm về typeof sau trong hướng dẫn này.
Chưa xác định
Trong JavaScript, một biến không có giá trị sẽ có giá trị undefined
. Kiểu cũng vậy undefined
.
Thí dụ
let car; // Value is undefined,
type is undefined
Bất kỳ biến nào cũng có thể được làm trống bằng cách đặt giá trị thành undefined
. Loại cũng sẽ được undefined
.
Thí dụ
car = undefined; // Value is undefined,
type is undefined
Giá trị trống
Giá trị trống không liên quan gì undefined
.
Một chuỗi rỗng có cả giá trị pháp lý và kiểu.
Thí dụ
let car = ""; //
The value is
"", the typeof is "string"