Rumah  >  Artikel  >  hujung hadapan web  >  Adakah Terdapat Alternatif kepada isNumeric() jQuery dalam JavaScript Tulen?

Adakah Terdapat Alternatif kepada isNumeric() jQuery dalam JavaScript Tulen?

Patricia Arquette
Patricia Arquetteasal
2024-10-19 16:57:30143semak imbas

Is There an Alternative to jQuery's isNumeric() in Pure JavaScript?

Menentukan Nilai Numerik dalam JavaScript Tulen: Alternatif kepada isNumeric() jQuery

Pustaka jQuery menyediakan fungsi yang mudah, isNumeric(), untuk mengesahkan sama ada nilai mewakili nombor. Walau bagaimanapun, untuk situasi di mana jQuery tidak tersedia, adalah penting untuk mengetahui sama ada terdapat alternatif dalam JavaScript tulen.

Cabaran Menguji Nombor

Dalam JavaScript, menentukan jenis nilai bukanlah sentiasa berterus terang. Dengan menggunakan operator jenis, seseorang mungkin secara intuitif menganggap bahawa mengesahkan sama ada nilai ialah nombor boleh dicapai hanya dengan menyemak sama ada jenisnya ialah "nombor." Walau bagaimanapun, pendekatan ini mempunyai had.

Membuat Fungsi isNumeric() Anda Sendiri

Memandangkan JavaScript tidak mempunyai fungsi isNumeric() terbina dalam, pelaksanaan tersuai menjadi perlu.

Pelaksanaan:

<code class="javascript">function isNumeric(n) {
  return !isNaN(parseFloat(n)) && isFinite(n);
}</code>

Penjelasan:

  • parseFloat(): Percubaan untuk menukar input kepada nombor titik terapung. Jika berjaya, ia mengembalikan nilai nombor, sebaliknya ia mengembalikan NaN (Bukan Nombor).
  • isNaN(): Memeriksa sama ada hasil parseFloat() ialah NaN, menunjukkan bahawa input bukan angka.
  • isFinite(): Mengesahkan bahawa input ialah nombor terhingga (bukan Infinity atau -Infinity).

Penggunaan:

<code class="javascript">const value = 10;
console.log(isNumeric(value)); // true</code>

Nota Penting

Perlu ditekankan bahawa parseInt() tidak boleh digunakan untuk pengesahan berangka. parseInt() memaksa rentetan kepada integer berdasarkan radixnya (biasanya 10), yang boleh menghasilkan keputusan yang salah untuk input bukan integer.

Atas ialah kandungan terperinci Adakah Terdapat Alternatif kepada isNumeric() jQuery dalam JavaScript Tulen?. 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