HomeLập trìnhJavaScriptCách chuyển đổi...

Cách chuyển đổi chuỗi thành số trong JavaScript (kèm ví dụ)


Chuyển đổi chuỗi thành số

Các parseInt() hàm phân tích một đối số chuỗi và trả về một số nguyên của cơ số đã chỉ định (cơ số trong các hệ thống số toán học).

parseInt(string, radix);

Thông số

string

Giá trị để phân tích cú pháp. Nếu string đối số không phải là một chuỗi, sau đó nó được chuyển đổi thành một chuỗi (sử dụng ToString thao tác trừu tượng). Khoảng trắng ở đầu trong đối số chuỗi bị bỏ qua.’= radix Một số nguyên từ 2 đến 36 đại diện cho cơ số (cơ số trong các hệ thống số toán học) của chuỗi được đề cập ở trên. chỉ định 10 cho hệ thống chữ số thập phân thường được con người sử dụng. Luôn chỉ định tham số này để loại bỏ sự nhầm lẫn của người đọc và để đảm bảo hành vi có thể dự đoán được. Các triển khai khác nhau tạo ra các kết quả khác nhau khi cơ số không được chỉ định, thường đặt giá trị mặc định là 10. Giá trị trả về Một số nguyên được phân tích cú pháp từ chuỗi đã cho. Nếu không thể chuyển đổi ký tự đầu tiên thành số, NaN Được trả lại.

Sự miêu tả

Các parseInt hàm chuyển đổi đối số đầu tiên của nó thành một chuỗi, phân tích cú pháp và trả về một số nguyên hoặc NaN. Nếu không NaN, giá trị trả về sẽ là số nguyên là đối số đầu tiên được lấy làm số trong cơ số (cơ số) đã chỉ định. Ví dụ: cơ số 10 biểu thị chuyển đổi từ số thập phân, 8 bát phân, 16 thập lục phân, v.v. Đối với radices trên 10các chữ cái trong bảng chữ cái biểu thị các chữ số lớn hơn 9. Ví dụ: đối với các số thập lục phân (cơ số 16),A xuyên qua F Được sử dụng.

Đọc thêm  Cómo imprimir en la consola en JS

Nếu parseInt gặp một ký tự không phải là một số trong cơ số đã chỉ định, nó sẽ bỏ qua nó và tất cả các ký tự tiếp theo và trả về giá trị số nguyên được phân tích cú pháp cho đến thời điểm đó. parseInt cắt ngắn số thành giá trị số nguyên. Không gian hàng đầu và dấu được cho phép.

Bởi vì một số số bao gồm e ký tự trong biểu diễn chuỗi của chúng (ví dụ: 6.022e23), sử dụng parseInt để cắt bớt các giá trị số sẽ tạo ra kết quả không mong muốn khi được sử dụng trên các số rất lớn hoặc rất nhỏ. parseInt không nên được sử dụng như một sự thay thế cho Math.floor().

Nếu cơ số là undefined hoặc 0 (hoặc vắng mặt), JavaScript giả định như sau:

  • Nếu đầu vào string bắt đầu bằng “0x” hoặc “0X”, cơ số là 16 (thập lục phân) và phần còn lại của chuỗi được phân tích cú pháp.
  • Nếu đầu vào string bắt đầu bằng “0”, cơ số là tám (bát phân) hoặc 10 (thập phân). Chính xác cơ số nào được chọn phụ thuộc vào việc triển khai. ECMAScript 5 chỉ định rằng 10 (thập phân) được sử dụng, nhưng không phải tất cả các trình duyệt đều hỗ trợ điều này. Vì lý do này, luôn chỉ định một cơ số khi sử dụng parseInt.
  • Nếu đầu vào string bắt đầu bằng bất kỳ giá trị nào khác, cơ số là 10 (thập phân).
  • Nếu không thể chuyển đổi ký tự đầu tiên thành số, thì parseInt sẽ trả về NaN.
Đọc thêm  Tôi cần bao nhiêu javascript

Đối với mục đích số học, giá trị NaN không phải là một số trong bất kỳ cơ số nào. Bạn có thể gọi hàm isNaN để xác định xem kết quả của parseInt có phải là NaN hay không. Nếu NaN được chuyển sang các phép toán số học, kết quả của phép toán cũng sẽ là NaN.

Để chuyển đổi số thành chuỗi ký tự trong một cơ số cụ thể, hãy sử dụng intValue.toString(radix).

ví dụ

sử dụng parseInt Các ví dụ sau đều trả về 15:

parseInt(' 0xF', 16);
parseInt(' F', 16);
parseInt('17', 8);
parseInt(021, 8);
parseInt('015', 10);   // parseInt(015, 10); will return 15
parseInt(15.99, 10);
parseInt('15,123', 10);
parseInt('FXX123', 16);
parseInt('1111', 2);
parseInt('15 * 3', 10);
parseInt('15e2', 10);
parseInt('15px', 10);
parseInt('12', 13);

Các ví dụ sau đều trả về NaN:

parseInt('Hello', 8); // Not a number at all
parseInt('546', 2);   // Digits are not valid for binary representations

Các ví dụ sau đều trả về -15:

parseInt('-F', 16);
parseInt('-0F', 16);
parseInt('-0XF', 16);
parseInt(-15.1, 10)
parseInt(' -17', 8);
parseInt(' -15', 10);
parseInt('-1111', 2);
parseInt('-15e1', 10);
parseInt('-12', 13);

Các ví dụ sau đều trả về 4:

parseInt(4.7, 10);
parseInt(4.7 * 1e22, 10); // Very large number becomes 4
parseInt(0.00000000000434, 10); // Very small number becomes 4

Ví dụ sau trả về 224:

parseInt('0e0', 16);

Thêm thông tin:

parseInt trên MDN

  • parseInt() và parseFloat() cố gắng chuyển đổi chuỗi thành số nếu có thể. Ví dụ, var x = parseInt("100"); // x = 100
  • Number() sẽ chuyển đổi thành một số mà giá trị có thể được biểu thị bằng. Điều này bao gồm các ngày thành số mili giây kể từ nửa đêm ngày 1 tháng 1 năm 1970 theo giờ UTC, các giá trị boolean thành 1 hoặc 0 và các giá trị không thể chuyển đổi thành số có thể nhận dạng được sẽ trở thành NaN. Đó là viết tắt của Not a Number và về mặt kỹ thuật cũng là một con số!
Đọc thêm  Cách tạo một trang web danh mục đầu tư bằng HTML, CSS, JavaScript và Bootstrap 5



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status