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:
Contoh:
Number("20px"); // NaN Number("2e1"); // 20 Number("010"); // 10 Number("0o10"); // 8 Number("0xF"); // 15
Pertimbangan Tambahan
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!