Dalam JavaScript, apabila kita membahagi sebarang nombor dengan sifar, kita boleh mendapat nilai infiniti. Selain itu, pembangun mungkin membuat kesilapan semasa menulis ungkapan matematik yang menilai hingga infiniti. Oleh itu, sebelum melakukan sebarang operasi pada nilai pulangan ungkapan matematik, kita perlu menyemak sama ada nilai itu terhingga.
Di sini kita akan mempelajari tiga cara untuk menyemak sama ada nombor adalah infiniti menggunakan JavaScript.
Dalam JavaScript, nombor ialah objek yang mengandungi sifat dan kaedah berbeza yang berkaitan dengan nombor. Sifat POSITIVE_INFINITY dan NEGATIVE_INFINITY bagi objek Nombor membolehkan pembangun menilai nilai infiniti positif dan negatif sesuatu nombor.
Kita boleh membandingkan nilai angka dengan Nombor.POSITIVE_INFINITY dan Nombor.NEGATIVE_INFINITY untuk menyemak sama ada nombor bernilai Infinity.
Gunakan sifat POSITIVE_INFINITY dan NEGATIVE_INFINITY bagi objek berangka mengikut sintaks berikut.
if (num1 == Number.POSITIVE_INFINITY || num1 == Number.NEGATIVE_INFINITY) { // number is finite } else { // number is not finite }
Dalam sintaks di atas, kami telah menggunakan operator OR (||) untuk menilai berbilang keadaan dalam pernyataan if.
Dalam contoh ini, kami telah mentakrifkan dua nombor dengan nilai yang berbeza. num1 mengandungi nilai terhingga dan num2 mengandungi nilai tak terhingga. Fungsi checkNumberIsFinite() mengambil nilai berangka sebagai hujah dan mencetak mesej sewajarnya dengan membandingkan nombor dengan POSITIVE_INFINITY dan NEGATIVE_INFINITY sama ada nombor itu terhingga atau tidak.
<html> <body> <p>Comparing the number value with the <i> Number.POSITIVE_INFINITY and Number.NEGATIVE_INFINITY </i> to check if number evaluates to Infinity.</p> <div id = "output"> </div> <script> let output = document.getElementById("output"); let num1 = 23; let num2 = 12 / 0; function checkNumberIsFinite(num) { // compare the numerical value with the Number.POSITIVE_INFINITY //and Number.NEGATIVE_INFINITY if ( num == Number.POSITIVE_INFINITY || num == Number.NEGATIVE_INFINITY ) { output.innerHTML += "The num is finite and it's value is " + num1 + "<br/>"; } else { output.innerHTML += "The num is not finite <br/>"; } } checkNumberIsFinite(num1); checkNumberIsFinite(num2); </script> </body> </html>
isFinite() mengambil nilai berangka sebagai parameter dan mengembalikan nilai Boolean bergantung pada sama ada nombor itu terhingga atau tidak. Di sini kami akan memanggil kaedah isFinite() dengan objek Nombor sebagai rujukan untuk menilai nombor dengan lebih mantap.
Pengguna boleh menggunakan kaedah isFinite() mengikut sintaks di bawah untuk menyemak sama ada nombor itu tidak terhingga. Kami mengambil objek Nombor sebagai rujukan dan lulus nilai angka sebagai parameter.
if (Number.isFinite(num1)) { // number is finite } else { // number evaluates to infinite }
nombor1 - Ini adalah nombor yang perlu dinilai.
Ia mengembalikan nilai boolean bergantung pada sama ada nombor itu terhingga atau tidak terhingga.
Kami menggunakan kaedah isFinite() sebagai syarat untuk pernyataan if-else. Kaedah isFinite() mengembalikan benar atau salah berdasarkan nilai yang kami luluskan sebagai parameter. Bergantung pada nilai pulangan, kawalan pelaksanaan program pergi ke blok if or else.
<html> <body> <h3>Using the <i>isFinite()</i> method to check if number evaluates to Infinity.</h2> <div id = "output"> </div> <script> let Output = document.getElementById("output"); let num1 = -93; let num2 = -12 / 0; // using the isFinite method; if (Number.isFinite(num1)) { Output.innerHTML += "The num1 is finite and its value is " + num1 + "<br/>"; } else { Output.innerHTML += "The num1 is not finite <br/>"; } if (Number.isFinite(num2)) { Output.innerHTML += "The num2 is finite and its value is " + num2 + "<br/>"; } else { Output.innerHTML += "The num2 is not finite <br/>"; } </script> </body> </html>
Math.abs() membolehkan kita mendapatkan nilai mutlak sebarang nombor. Infinity ialah kata kunci dalam JavaScript yang mewakili nilai yang tidak terhingga.
Kita boleh membandingkan nombor kita dengan kedua-dua infinity dan -infinity, atau mengambil nilai mutlak nombor itu dan membandingkannya dengan infiniti sahaja.
Pengguna boleh menggunakan sintaks berikut untuk menggunakan kaedah Math.abs() dan kata kunci Infinity untuk menyemak sama ada hasil pengiraan nombor ialah Infinity.
let number = Math.abs(num); if (number == Infinity) { // num is not finite. } else { // num is finite }
Contoh di bawah mengandungi fungsi evaluateNumber() , yang dipanggil apabila pengguna mengklik butang Evaluate Number. Fungsi evaulateNumber() mula-mula menukar nilai angka kepada nilai positif dan membandingkannya dengan kata kunci Infiniti.
<html> <body> <h3>Using the <i> Math.abs() method and Infinity keyword </i> to check if number evaluates to Infinity.</h3> <div id = "output"> </div><br> <button onclick = "evaluateNumber(23324/0)"> Evaluate number </button> <script> let output = document.getElementById("output"); function evaluateNumber(num) { let number = Math.abs(num); if (number == Infinity) { output.innerHTML += "The number is not finite <br/>"; } else { output.innerHTML += "The number is finite. <br/>"; } } </script> </body> </html>
Cara terbaik untuk menyemak sama ada nombor adalah infiniti ialah menggunakan kaedah isFinite() yang mengambil nombor sebagai parameter dan mengembalikan hasilnya selepas mengira nombor. Walau bagaimanapun, pengguna juga boleh menggunakan kaedah lain kerana semua kaedah adalah linear.
Atas ialah kandungan terperinci Bagaimana untuk menyemak sama ada nombor adalah infiniti menggunakan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!