Trong JavaScript, bạn có thể biểu thị một số là một số thực [ví dụ:. 42
] hoặc dưới dạng chuỗi [ví dụ:. '42'
]
Nếu bạn sử dụng phép so sánh chặt chẽ để so sánh hai đối tượng, thì sẽ không thành công vì chúng là hai loại đối tượng khác nhau
var num1 = 42;
var num2 = '42';
if [num1 === num2] {
console.log[true];
} else {
console.log[false];
}
// Will log `false`
Hôm nay, chúng ta hãy xem ba cách khác nhau để chuyển đổi một chuỗi thành một số
parseInt[]
Phương thức parseInt[]
chuyển đổi một chuỗi thành một số nguyên [một số nguyên]
Nó chấp nhận hai đối số. Đối số đầu tiên là chuỗi để chuyển đổi. Đối số thứ hai được gọi là radix
. Đây là cơ sở số được sử dụng trong các hệ thống toán học. Đối với mục đích sử dụng của chúng tôi, nó phải luôn là 10
var text = '42px';
var integer = parseInt[text, 10];
// returns 42
var text = '42px';
var integer = parseInt[text, 10];
// returns 42
0
var text = '42px';
var integer = parseInt[text, 10];
// returns 42
Phương thức
var text = '42px';
var integer = parseInt[text, 10];
// returns 42
0 chuyển đổi một chuỗi thành một số điểm [một số có dấu thập phân]. Bạn thậm chí có thể chuyển các chuỗi có văn bản ngẫu nhiên trong đóvar text = '3.14someRandomStuff';
var pointNum = parseFloat[text];
// returns 3.14
var text = '42px';
var integer = parseInt[text, 10];
// returns 42
2
var text = '42px';
var integer = parseInt[text, 10];
// returns 42
Phương thức
var text = '42px';
var integer = parseInt[text, 10];
// returns 42
2 chuyển đổi một chuỗi thành một sốĐôi khi nó là một số nguyên. Những lần khác, đó là một số điểm. Và nếu bạn chuyển vào một chuỗi có văn bản ngẫu nhiên trong đó, bạn sẽ nhận được
var text = '42px';
var integer = parseInt[text, 10];
// returns 42
4, từ viết tắt của “Không phải là số. ”Do sự không nhất quán này, đó là một lựa chọn kém an toàn hơn so với parseInt[]
và
var text = '42px';
var integer = parseInt[text, 10];
// returns 42
0. Nếu bạn biết định dạng của số mình muốn, hãy sử dụng các số đó để thay thế. Nếu bạn muốn chuỗi không thành công với var text = '42px';
var integer = parseInt[text, 10];
// returns 42
4 nếu nó có các ký tự khác trong đó, thì var text = '42px';
var integer = parseInt[text, 10];
// returns 42
2 thực sự có thể là lựa chọn tốt hơn// Convert strings
Number['123']; // returns 123
Number['12.3']; // returns 12.3
Number['3.14someRandomStuff']; // returns NaN
Number['42px']; // returns NaN
tính tương thích của trình duyệt web
Cả ba phương pháp đều hoạt động trong tất cả các trình duyệt hiện đại và IE6 trở lên
Nếu bạn thấy bài đăng này hữu ích, bạn cũng có thể thích hướng dẫn bỏ túi về Chuỗi, Mảng & Đối tượng của tôi, có rất nhiều phương thức hữu ích như thế này