Hàm parseInt
trong JavaScript là một công cụ mạnh mẽ giúp chuyển đổi chuỗi ký tự thành số nguyên. Nó rất hữu ích trong nhiều tình huống, đặc biệt khi bạn cần xử lý và chuyển đổi dữ liệu từ dạng văn bản sang dạng số. Hiểu và sử dụng parseInt
một cách hiệu quả sẽ giúp bạn tối ưu hóa mã nguồn và đảm bảo dữ liệu được xử lý đúng cách.
Cú pháp và cách sử dụng cơ bản
Cú pháp của hàm parseInt
rất đơn giản:
parseInt(string, radix);
string
: Chuỗi ký tự cần chuyển đổi.radix
: Hệ số cơ số (từ 2 đến 36) chỉ định cơ số của hệ số số học được sử dụng.
Ví dụ cơ bản:
let number = parseInt("42"); console.log(number); // 42
Trong ví dụ này, chuỗi “42” được chuyển đổi thành số nguyên 42.
Tham số của hàm parseInt
Chuỗi đầu vào (string)
Chuỗi đầu vào là chuỗi ký tự mà bạn muốn chuyển đổi thành số. parseInt
sẽ bắt đầu đọc chuỗi từ trái sang phải, dừng lại khi gặp ký tự không phải số.
Cơ số (radix)
Radix chỉ định hệ cơ số của hệ số số học được sử dụng. Radix là một số nguyên từ 2 đến 36.
Ví dụ với radix 10:
let number = parseInt("42", 10); console.log(number); // 42
Ví dụ với radix 2:
let binaryNumber = parseInt("101010", 2); console.log(binaryNumber); // 42
Các trường hợp sử dụng phổ biến
Chuyển đổi chuỗi số thập phân:
let decimalNumber = parseInt("123.45"); console.log(decimalNumber); // 123
Trong trường hợp này, parseInt
chuyển đổi chuỗi “123.45” thành số nguyên 123, bỏ qua phần thập phân.
Chuyển đổi chuỗi số nhị phân:
let binaryNumber = parseInt("1101", 2); console.log(binaryNumber); // 13
Chuỗi nhị phân “1101” được chuyển đổi thành số nguyên 13.
Chuyển đổi chuỗi số thập lục phân:
let hexNumber = parseInt("1A", 16); console.log(hexNumber); // 26
Chuỗi thập lục phân “1A” được chuyển đổi thành số nguyên 26.
Xử lý các giá trị không hợp lệ
Chuỗi không hợp lệ:
let invalidNumber = parseInt("abc"); console.log(invalidNumber); // NaN
Khi chuỗi không chứa số hợp lệ, parseInt
sẽ trả về NaN
(Not-a-Number).
Phần không phải số trong chuỗi:
let mixedNumber = parseInt("123abc"); console.log(mixedNumber); // 123
parseInt
sẽ dừng lại khi gặp ký tự không phải số đầu tiên và trả về số nguyên đã đọc được.
So sánh parseInt với các phương pháp chuyển đổi khác
parseInt vs. Number():
Number
chuyển đổi toàn bộ chuỗi thành số, bao gồm cả phần thập phân.
let num1 = parseInt("123.45"); let num2 = Number("123.45"); console.log(num1); // 123 console.log(num2); // 123.45
parseInt vs. parseFloat():
parseFloat
giữ lại phần thập phân khi chuyển đổi chuỗi thành số.
let intNumber = parseInt("123.45"); let floatNumber = parseFloat("123.45"); console.log(intNumber); // 123 console.log(floatNumber); // 123.45
Các lỗi thường gặp và cách khắc phục
Quên xác định radix:
Nếu không xác định radix, parseInt
có thể mặc định sử dụng hệ cơ số khác, gây ra lỗi.
let number = parseInt("08"); console.log(number); // 8
Xử lý giá trị NaN:
Khi chuyển đổi không thành công, parseInt
trả về NaN
. Bạn nên kiểm tra và xử lý tình huống này.
let value = parseInt("abc"); if (isNaN(value)) { console.log("Giá trị không hợp lệ"); }
Kết luận
Hàm parseInt
là một công cụ hữu ích trong JavaScript giúp chuyển đổi chuỗi thành số nguyên một cách hiệu quả. Bằng cách nắm vững cú pháp và các trường hợp sử dụng của parseInt
, bạn có thể tối ưu hóa mã nguồn và đảm bảo dữ liệu được xử lý chính xác. Hãy thực hành và áp dụng parseInt
trong các dự án của bạn để tận dụng tối đa lợi ích mà nó mang lại.
Tài liệu tham khảo
- Mozilla Developer Network (MDN): parseInt
- W3Schools: JavaScript parseInt()
- JavaScript.info: Number