Rumah >hujung hadapan web >tutorial js >Bila hendak menggunakan parseInt() dan Number() untuk Penukaran Rentetan kepada Nombor dalam JavaScript?

Bila hendak menggunakan parseInt() dan Number() untuk Penukaran Rentetan kepada Nombor dalam JavaScript?

Linda Hamilton
Linda Hamiltonasal
2024-11-15 07:09:02342semak imbas

 When to Use parseInt() and Number() for String to Number Conversion in JavaScript?

Menukar Rentetan kepada Nombor dengan parseInt() dan Number()

Apabila menukar rentetan kepada nombor dalam JavaScript, dua fungsi yang biasa digunakan ialah parseInt () dan Nombor(). Walaupun kedua-duanya berkongsi tujuan penukaran berangka, mereka berbeza dalam pendekatan dan tingkah laku mereka.

parseInt()

parseInt() melaksanakan tugas yang lebih khusus dikenali sebagai penghuraian . Ia cuba mengekstrak nombor bulat daripada rentetan. Apabila menghuraikan, parseInt() membaca rentetan dari kiri ke kanan, berhenti pada aksara bukan digit pertama. Sebarang aksara seterusnya dalam rentetan diabaikan.

parseInt() juga mengambil hujah kedua pilihan, radix atau asas, yang menentukan sistem nombor yang digunakan untuk mentafsir digit. Radix lalai ialah 10 (perpuluhan), tetapi ia boleh ditetapkan kepada mana-mana integer antara 2 dan 36.

Contoh:

parseInt("20px");       // 20
parseInt("10100", 2);   // 20 (binary)
parseInt("2e1");        // 2 (does not parse the "e1")

Nombor()

Number(), sebaliknya, ialah fungsi pembina yang menukar rentetan kepada nombor, melakukan penukaran jenis. Tidak seperti parseInt(), Number() cuba menukar keseluruhan rentetan kepada nombor, walaupun ia mengandungi aksara bukan angka.

Jika rentetan mengandungi aksara bukan angka, Number() akan mengembalikan NaN (Bukan -a-Nombor). Walau bagaimanapun, ia mempunyai beberapa gelagat ketara dalam kes tertentu:

  • Ia boleh mengendalikan tatatanda eksponen (cth., "2e1") dan menukarnya kepada nombor.
  • Ia boleh mengesan dan menghuraikan tatatanda perlapanan tersirat (cth., "010"), tetapi ia juga boleh digunakan untuk menukar secara eksplisit kepada perlapanan menggunakan "0o".
  • Ia boleh mengendalikan nombor heksadesimal yang diawali dengan "0x".

Contoh:

Number("20px");       // NaN
Number("2e1");        // 20
Number("010");         // 10
Number("0o10");         // 8
Number("0xF");   // 15

Pertimbangan Tambahan

  • parseInt() biasanya diutamakan apabila anda perlu menghuraikan rentetan sebagai nombor bulat, manakala Number() adalah lebih sesuai untuk menukar nilai kepada jenis angka.
  • Operator tambah unary ( ) juga boleh digunakan untuk menukar rentetan kepada nombor, yang bersamaan dengan menggunakan pembina Number().

Atas ialah kandungan terperinci Bila hendak menggunakan parseInt() dan Number() untuk Penukaran Rentetan kepada Nombor dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn