Chuyển kiểu và ép kiểu dữ liệu trong javascript
Nguyễn Dương 19-06-2024Trong javascript có chuyển đổi kiểu và ép kiểu.
- Chuyển đối kiểu là chuyển đổi kiểu dữ liệu theo cách thủ công từ kiểu này sang kiểu khác
- Ép kiểu là khi Javascript tự động chuyển đổi kiểu dữ liệu cho chúng ta, hành động này diễn ra ngầm
Từ string sang number với hàm Number
Sử dụng hàm Number(valueString) để chuyển kiểu từ string sang số.
Ví dụ:
const valueString = "1998"
const valueNumber = Number(valueString) // 1998
Chuyển string không phải số sang number
Khi chuyển String không phải số sang Number trình duyệt sẽ trả về NaN (Not a number).
NaN có nghĩa là một số không hợp lệ, typeof NaN vẫn sẽ trả về number.
Từ number sang string với hàm String
Sử dụng hàm String(valueNumber) để chuyển kiểu từ số sang String.
Ví dụ:
const valueNumber = 1998
const valueString = String(valueNumber) // "1998"
Lưu ý:
- Javascript chỉ có thể chuyển đổi thành ba kiểu: number, string, boolean
- Không thể chuyển đổi thành undefined hoặc null
Ép kiểu
- Ép kiểu xảy ra bất cứ khi nào tồn tại toán tử xử lý hai giá trị có kiểu dữ liệu khác nhau
- Javascript sẽ chuyển đổi kiểu trong các giá trị để khớp với các giá trị khác để cuối cùng có thể thực hiện phép tính
Tự động chuyển từ number sang string
- Với các phép toán cộng chuỗi hoặc template string tồn tại chuỗi và một số thì số sẽ được chuyển đổi thành string
Tự động chuyển từ string sang number
- String được ép kiểu thành số trong phép toán trừ , nhân , chia,... những phép toán bắt buộc phải dùng số