Ép kiểu
Thuộc phần Kiến thức cơ bản trong hành trình JavaScript của Coddy. Bài học 22 trên 77.
Ép kiểu trong JavaScript là quá trình tự động chuyển đổi giá trị từ kiểu dữ liệu này sang kiểu dữ liệu khác. Việc này có thể xảy ra ngầm trong một số phép toán hoặc diễn ra tường minh khi bạn dùng các hàm như String(), Number() hoặc Boolean().
Ép kiểu ngầm thường xảy ra khi bạn dùng toán tử so sánh bằng lỏng == hoặc thực hiện các phép toán giữa những kiểu dữ liệu khác nhau, chẳng hạn như cộng một số với một chuỗi.
Ví dụ:
let result = 5 + "5";
// Chứa "55" vì số 5 tự động chuyển thành chuỗi (string) "5" rồi được nối lại.let result = true == 1;
// Biểu thức có giá trị true vì giá trị logic true được ngầm chuyển thành số 1Bạn có thể chuyển đổi kiểu dữ liệu một cách tường minh bằng các hàm dựng sẵn:
String(value)chuyển đổi một giá trị thành chuỗi
Number(value)chuyển đổi một giá trị thành số
Boolean(value)chuyển đổi một giá trị thành kiểu boolean
Ví dụ:
let num = "123";
let str = Number(num) + 7; // Chứa giá trị 130
console.log(str); let bool = true;
let numBool = Number(bool); // Chứa giá trị 1Hiểu về chuyển đổi kiểu là điều rất quan trọng để viết code JavaScript chính xác và tránh kết quả ngoài dự kiến.
Thử thách
Người mớiBạn được cung cấp một đoạn code có một số biến thuộc các kiểu dữ liệu khác nhau.
Nhiệm vụ của bạn là chuyển đổi kiểu dữ liệu và in ra kết quả:
- Chuyển số
numthành chuỗi và lưu vào biến có têna. - Chuyển giá trị boolean
boolthành số và lưu vào biến có tênb. - Chuyển chuỗi
strthành số và lưu vào biến có tênc. - Thực hiện chuyển đổi kiểu ngầm định bằng cách nối
numvớistr, rồi lưu kết quả vào biến có tênd.
Dùng các hàm chuyển đổi kiểu tường minh (String(), Number()) cho ba nhiệm vụ đầu tiên và quan sát việc chuyển đổi kiểu ngầm định ở nhiệm vụ cuối cùng.
Tự làm thử
// Các biến (variable) đã cho
let num = 42
let bool = false
let str = "7"
// Viết code bên dưới
// Đừng thay đổi dòng bên dưới
console.log(`a = ${a}`)
console.log(`b = ${b}`)
console.log(`c = ${c}`)
console.log(`d = ${d}`)Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Kiến thức cơ bản
4Toán tử phần 2
Toán tử logic phần 1Toán tử logic phần 2Ôn tập: logic đơn giảnToán tử logic phần 3Ép kiểu8Vòng lặp
Vòng lặp forVòng lặp whileThoát vòng lặpBỏ qua lần lặpÔn tập: giai thừaVòng lặp do whileVòng lặp lồng nhau3Toán tử phần 1
Toán tử số họcToán tử moduloPhép tính số học rút gọnToán tử so sánhSo sánh bằng nghiêm ngặt và không nghiêm ngặtÔn tập: phép tính đơn giản6Nhập xuất cơ bản
Đầu raĐầu ra với biếnChuyển đổi kiểu dữ liệu, phần 1Chuyển đổi kiểu dữ liệu, phần 2Ôn tập đến 120Ôn tập: đúng hay saiTự luyện tập: Trình biên dịch JavaScript online