Bagaimana untuk menukar rentetan kepada integer dalam JavaScript tanpa menggunakan fungsi parseInt()?

WBOY
Lepaskan: 2023-08-24 21:57:08
ke hadapan
953 orang telah melayarinya

Bagaimana untuk menukar rentetan kepada integer dalam JavaScript tanpa menggunakan fungsi parseInt()?

parseInt() ialah fungsi terbina dalam JavaScript yang menghuraikan rentetan dan mengembalikan integer. Walau bagaimanapun, kadangkala kita ingin menukar rentetan kepada integer tanpa menggunakan fungsi ini. Dalam artikel ini, kami akan meneroka cara melakukan ini.

Menggunakan operator tambah unary

Salah satu cara untuk menukar rentetan kepada integer ialah menggunakan operator tambah unary. Operator ini menukarkan operannya kepada nombor. Contohnya, atur cara berikut menukar rentetan "123" kepada nombor 123 -

Contoh 1

<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result1"></div>
   <div id="result2"></div>
   <div id="result3"></div>
   <script>
      let str = "123";
      document.getElementById("result1").innerHTML = typeof str;
      let num = +str; // num = 123
      document.getElementById("result2").innerHTML = num;
      document.getElementById("result3").innerHTML = typeof num;
   </script>
</body>
</html>
Salin selepas log masuk

Contoh 2

Operator tambah unari juga boleh digunakan untuk menukar nilai lain kepada nombor. Contohnya, ia boleh menukar nilai Boolean kepada nombor seperti yang ditunjukkan di bawah −

<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result"></div>
   <script>
      let bool = true;
      let num = +bool; // num = 1
      document.getElementById("result").innerHTML = num  
   </script>
</body>
</html>
Salin selepas log masuk

Menggunakan fungsi Number()

Cara lain untuk menukar rentetan kepada nombor adalah dengan menggunakan fungsi Number() Fungsi ini dalam hujah dan mengembalikan nombor. Contohnya, kod berikut menukar rentetan "123" kepada nombor 123 −

Contoh 1

<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result1"></div>
   <div id="result2"></div>
   <div id="result3"></div>
   <script>
      let str = "123";
      document.getElementById("result1").innerHTML = typeof str;
      let num = Number(str); // num = 123
      document.getElementById("result2").innerHTML = num;
      document.getElementById("result3").innerHTML = typeof num;
   </script>
</body>
</html>
Salin selepas log masuk

Contoh 2

Nombor()Fungsi ini juga boleh digunakan untuk menukar yang lain nilai kepada nombor. Sebagai contoh, ia boleh menukar nilai Boolean kepada nombor seperti yang ditunjukkan di bawah -

<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result"></div>
   <script>
      let bool = false;
      let num = Number(bool); // num = 1
      document.getElementById("result").innerHTML = num    
   </script>
</body>
</html>
Salin selepas log masuk

menggunakan fungsi Math.floor()

Math.floor() fungsi mengembalikan integer terbesar kurang daripada atau sama dengan nombor tertentu . Fungsi ini boleh digunakan untuk menukar rentetan kepada integer.

Contoh

Kod berikut menukar rentetan "123" kepada nombor 123−

<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result1"></div>
   <div id="result2"></div>
   <div id="result3"></div>
   <script>
      let str = "123";
      document.getElementById("result1").innerHTML = typeof str;
      let num = Math.floor(str); // num = 123
      document.getElementById("result2").innerHTML = num;
      document.getElementById("result3").innerHTML = typeof num;
   </script>
</body>
</html>
Salin selepas log masuk

Dalam kod di atas, kita mula-mula menukar rentetan "123" kepada nombor menggunakan fungsi Number(). Kami kemudian menghantar nombor ini kepada fungsi Math.floor(), yang mengembalikan integer 123.

Menggunakan Operator Bitwise

Pengendali Bitwise ialah pengendali yang beroperasi pada nilai bit. Operator ini boleh digunakan untuk menukar rentetan kepada integer.

Contoh

Kod berikut menukar rentetan "765" kepada nombor 765 −

<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result1"></div>
   <div id="result2"></div>
   <div id="result3"></div>
   <script>
      let str = "765";
      document.getElementById("result1").innerHTML = typeof str;
      let num = str|0;
      document.getElementById("result2").innerHTML = num;
      document.getElementById("result3").innerHTML = typeof num;
   </script>
</body>
</html>
Salin selepas log masuk

Dalam kod di atas, kami menggunakan operator bitwise OR (|) untuk menukar rentetan "765" kepada nombor OR operator menukarkan operannya kepada integer 32-bit dan kemudian melakukan operasi OR bitwise pada mereka Dalam kes ini, ia menukar rentetan "765" kepada nombor 765.

Menggunakan fungsi Math.ceil()

The Math. . fungsi ceil() mengembalikan integer terkecil lebih besar daripada atau sama dengan nombor tertentu Fungsi ini boleh digunakan untuk menukar rentetan kepada integer.

Contoh

Kod berikut menukar rentetan "123" kepada nombor 123. −

<!doctype html>
<html>
<head>  
   <title>Examples</title>
</head>
<body>  
   <div id=&#39;result1&#39;></div>  
   <div id=&#39;result2&#39;></div>  
   <div id=&#39;result3&#39;></div>  
   <script>      
      let str = &#39;123&#39;;      
      document.getElementById(&#39;result1&#39;).innerHTML ="String:" +str;      
      document.getElementById(&#39;result2&#39;).innerHTML = "Before:<br> Type: "+typeof str;      
      let num = Math.ceil(str); // num = 123            
      document.getElementById(&#39;result3&#39;).innerHTML = "After:<br> Type:"+typeof num;          
   </script>
</body>
</html>
Salin selepas log masuk

Dalam kod di atas, kita mula-mula menukar rentetan "123" kepada nombor menggunakan fungsi Number(). Kami kemudian menghantar nombor ini kepada fungsi Math.ceil(), yang mengembalikan integer 123.

Terdapat beberapa cara untuk menukar rentetan kepada integer tanpa menggunakan fungsi parseInt(). Kaedah ini termasuk menggunakan operator tambah unary, fungsi Number(), fungsi Math.floor() dan operator bitwise.

Atas ialah kandungan terperinci Bagaimana untuk menukar rentetan kepada integer dalam JavaScript tanpa menggunakan fungsi parseInt()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!