Objek Nombor JavaScript



JavaScript hanya mempunyai satu jenis nombor.

Nombor boleh ditulis dengan atau tanpa titik perpuluhan.


Nombor JavaScript

Nombor JavaScript boleh ditulis dengan atau tanpa titik perpuluhan:

Contoh

var pi=3.14; // Gunakan titik perpuluhan
var x=34; // Tanpa titik perpuluhan

Nombor yang sangat besar atau kecil boleh ditulis menggunakan tatatanda saintifik (eksponen):

Contoh

var y=123e5; // 12300000
var z=123e-5; // 0.00123


Semua nombor JavaScript ialah 64 bit

JavaScript bukan bahasa yang ditaip. Tidak seperti kebanyakan bahasa pengaturcaraan lain, JavaScript tidak mentakrifkan jenis nombor yang berbeza, seperti integer, pendek, panjang, titik terapung, dsb.

Dalam JavaScript, nombor tidak dibahagikan kepada jenis integer dan jenis titik terapung Semua nombor diwakili oleh Jenis titik terapung. JavaScript menggunakan format titik terapung 64-bit yang ditakrifkan oleh standard IEEE754 untuk mewakili nombor Ia boleh mewakili nilai maksimum ±1.7976931348623157 x 10308 dan nilai minimum ±5 x 10 -324

值 (aka Fraction/Mantissa)指数Sign
52 bits (0 - 51) 11 bits (50 - 62)1 bit (63)

<. 🎜>
ketepatan

Integer (tanpa titik perpuluhan atau tatatanda eksponen) boleh sehingga 15 digit.

Bilangan maksimum tempat perpuluhan ialah 17, tetapi operasi titik terapung tidak selalunya 100% tepat:

Contoh

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>

<script>
var x;
document.write("<p>仅显示17位: ");
x=12345678901234567890;
document.write(x + "</p>");
document.write("<p>0.2 + 0.1 = ");
x=0.2+0.1;
document.write(x + "</p>");
document.write("<p>可以通过乘以10或除以10来计算: ");
x=(0.2*10+0.1*10)/10;
document.write(x +"</p>");
</script>

</body>
</html>

Run Instance»Klik butang "Run Instance" untuk melihat contoh dalam talian


Oktal dan heksadesimal

Jika awalan adalah ​​0, kemudian JavaScript mentafsir pemalar berangka sebagai nombor perlapanan, atau sebagai nombor perenambelasan jika diawali dengan 0 dan "x".

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>

<script>
var y = 0377;
var z = 0xFF; 
document.write(y + "<br>");
document.write(z + "<br>");
</script>

</body>
</html>

Run Instance»Klik butang "Run Instance" untuk melihat contoh dalam talian

Secara lalai, nombor JavaScript dipaparkan dalam perpuluhan.

Tetapi anda boleh menggunakan kaedah toString() untuk mengeluarkan heksadesimal, perlapanan atau perduaan.

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>

<script>
var myNumber = 128;
document.write(myNumber + ' 十进制<br>');
document.write(myNumber.toString(16) + ' 十六进制<br>');
document.write(myNumber.toString(8) + ' 八进制<br>');
document.write(myNumber.toString(2) + ' 二进制<br>');
</script>

</body>
</html>

Run Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian


Infiniti

Apabila hasil operasi berangka melebihi had atas nombor yang JavaScript boleh wakili (limpahan), hasilnya ialah nilai infiniti khas, yang diwakili oleh Infiniti dalam JavaScript . Begitu juga, apabila nilai nombor negatif melebihi julat nombor negatif yang boleh diwakili oleh JavaScript, hasilnya ialah infiniti negatif, yang diwakili oleh -Infinity dalam JavaScript. Nilai tak terhingga berkelakuan seperti yang kita jangkakan: operasi berdasarkan penambahan, penolakan, pendaraban dan pembahagian masih menghasilkan infiniti (sambil mengekalkan tandanya, sudah tentu).

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>

<script>
myNumber=2;
while (myNumber!=Infinity){
	myNumber=myNumber*myNumber;
	document.write(myNumber +'<BR>');
}
</script>

</body>
</html>

Run Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian

Membahagi dengan 0 juga menghasilkan infiniti:

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>

<script>
var x = 2/0;
var y = -2/0;
document.write(x + "<br>");
document.write(y + "<br>");
</script>

</body>
</html>

Run Instance»

Klik " Butang Run Instance" " untuk melihat contoh dalam talian


NaN - nilai bukan angka

Atribut NaN ialah nilai khas yang mewakili nilai bukan angka. Atribut ini digunakan untuk menunjukkan bahawa nilai bukan nombor. Objek Nombor boleh ditetapkan kepada nilai ini untuk menunjukkan bahawa ia bukan nilai angka.

Anda boleh menggunakan fungsi global isNaN() untuk menentukan sama ada sesuatu nilai ialah nilai NaN.

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>
	
<p>一个数字除以一个字符串结果不是一个数字</p>
<p>一个数字除以一个字符串数字结果是一个数字</p>
<p id="demo"></p>
<script>
var x = 1000 / "Apple";
var y = 1000 / "1000";
document.getElementById("demo").innerHTML = isNaN(x) + "<br>" + isNaN(y);
</script>

</body>
</html>

Run Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian

Dibahagi dengan 0 ialah infiniti, iaitu nombor:

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>
	
<p id="demo"></p>
<script>
var y = 1000 / 0;
document.getElementById("demo").innerHTML = isNaN(y);
</script>

</body>
</html>

Jalankan instance »

Klik butang "Jalankan contoh" untuk melihat contoh dalam talian


Nombor boleh menjadi nombor atau objek

Nombor boleh dimulakan dengan data peribadi, seperti x = 123;

Data permulaan objek berangka JavaScript, var y = baharu Number(123);

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>
<p id="demo"></p>

<script>
var x = 123;              // x 是一个数字
var y = new Number(123);  // y 是一个对象
var txt = typeof(x) + " " + typeof(y);
document.getElementById("demo").innerHTML=txt;
</script>

</body>
</html>

Run Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian

Instance

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php中文网(php.cn)</title>
</head>
<body>
<p id="demo"></p>

<script>
var x = 123;              // x 是一个数字
var y = new Number(123);  // y 是一个对象
document.getElementById("demo").innerHTML = x===y;
</script>

</body>
</html>

Run Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian


Sifat angka

  • MAX_VALUE

  • MIN_VALUE

  • NEGATIF_INFINITY

  • POSITIF_INFINITY

  • NaN

  • prototaip

  • pembina


Kaedah nombor

  • kepada Eksponen()

  • kepadaTetap()

  • toPrecision()

  • toString()

  • valueOf()