Dalam tutorial ini, anda akan belajar mengenai Nombor JavaScript dengan bantuan contoh.
Dalam JavaScript, nombor adalah jenis data primitif. Sebagai contoh,
const a = 3; const b = 3.13;
Tidak seperti dalam beberapa bahasa pengaturcaraan lain, anda tidak perlu secara khusus menyatakan nilai integer atau terapung menggunakan int , float , dll.
Anda boleh menggunakan notasi eksponensial e untuk memasukkan nombor yang terlalu besar atau terlalu kecil. Sebagai contoh,
const a1 = 5e9; console.log(a1); //5000000000 const a2 = 5e-5; console.log(a2); // 0.00005
Nombor juga dapat dilambangkan dalam notasi heksadesimal. Sebagai contoh,
const a = 0xff; console.log(a); // 255 const b = 0x00 ; console.log(b); // 0
+ Operator dengan Nombor
Apabila +
digunakan dengan nombor, ia digunakan untuk menambah nombor. Sebagai contoh,
const a = 4 + 9; console.log(a); // 13
Apabila +
digunakan dengan nombor dan rentetan, ia digunakan untuk menggabungkannya. Sebagai contoh,
const a = '4' + 9; console.log(a); // 49
Apabila rentetan numerik digunakan dengan operasi angka lain, rentetan numerik diubah menjadi angka. Sebagai contoh,
const a = '4' - 2; console.log(a); // 2 const a = '4' / 2; console.log(a); // 2 const a = '4' * 2; console.log(a); // 8
JavaScript NaN
Dalam JavaScript, NaN
(Bukan Nombor) adalah kata kunci yang menunjukkan bahawa nilainya bukan nombor.
Melakukan operasi aritmetik (kecuali +
) ke nilai angka dengan hasil rentetan dalam NaN
. Sebagai contoh,
const a = 4 - 'hello'; console.log(a); // NaN
Fungsi terbina dalam isNaN()
dapat digunakan untuk mengetahui apakah nilai adalah nombor. Sebagai contoh,
const a = isNaN(9); console.log(a); // false const a = isNaN(4 - 'hello'); console.log(a); // true
Apabila typeof
operator digunakan untuk NaN
nilai, ia memberikan output nombor. Sebagai contoh,
const a = 4 - 'hello'; console.log(a); // NaN console.log(typeof a); // "number"
Infiniti JavaScript
Dalam JavaScript, apabila pengiraan dilakukan yang melebihi bilangan terbesar (atau terkecil) yang mungkin, Infinity
(atau -Infinity
) dikembalikan. Sebagai contoh,
const a = 2 / 0; console.log(a); // Infinity const a = -2 / 0; console.log(a); // -Infinity
JavaScript BigInt
Dalam JavaScript, jenis Nombor hanya dapat mewakili angka kurang dari (2 53 - 1) dan lebih dari - (2 53 - 1) . Namun, jika anda perlu menggunakan bilangan yang lebih besar daripada itu, anda boleh menggunakan jenis data BigInt.
Nombor BigInt dibuat dengan menambahkan n hingga akhir bilangan bulat. Sebagai contoh,
// BigInt value const value = 900719925124740998n; // Adding two big integers const value1 = value + 1n; console.log(value1); // returns "900719925124740999n"
Catatan: BigInt diperkenalkan dalam versi JavaScript yang lebih baru dan tidak disokong oleh banyak penyemak imbas. Lawati sokongan BigInt JavaScript untuk mengetahui lebih lanjut.
Nombor JavaScript Disimpan dalam 64-bit
Dalam JavaScript, nombor disimpan dalam format 64-bit IEEE-754, juga dikenali sebagai "nombor titik terapung berketepatan ganda".
Nombor disimpan dalam 64 bit (nombor disimpan dalam kedudukan 0 hingga 51 bit, eksponen dalam kedudukan 52 hingga 62 bit dan tanda dalam kedudukan 63 bit).
Nombor | Eksponen | Tanda |
---|---|---|
52 bit (0 - 51) | 11 bit (52- 62) | 1 bit (63) |
Masalah Ketepatan
Operasi pada nombor floating-point menghasilkan beberapa hasil yang tidak dijangka. Sebagai contoh,
const a = 0.1 + 0.2; console.log(a); // 0.30000000000000004
Hasilnya hendaklah 0.3 bukannya 0.30000000000000004 . Kesalahan ini berlaku kerana dalam JavaScript, nombor disimpan dalam bentuk binari untuk mewakili digit perpuluhan secara dalaman. Dan nombor perpuluhan tidak dapat ditunjukkan dalam bentuk binari dengan tepat.
Untuk menyelesaikan masalah di atas, anda boleh melakukan perkara seperti ini:
const a = (0.1 * 10 + 0.2 * 10) / 10; console.log(a); // 0.3
Anda juga boleh menggunakan toFixed()
kaedahnya.
const a = 0.1 + 0.2; console.log(a.toFixed(2)); // 0.30
toFixed(2)
membundarkan nombor perpuluhan hingga dua nilai perpuluhan.
const a = 9999999999999999 console.log(a); // 10000000000000000
Nota : Bilangan bulat tepat hingga 15 digit.
Objek Bilangan
Anda juga boleh membuat nombor menggunakan new
kata kunci. Sebagai contoh,
const a = 45; // creating a number object const b = new Number(45); console.log(a); // 45 console.log(b); // 45 console.log(typeof a); // "number" console.log(typeof b); // "object"
Catatan : Sebaiknya jangan menggunakan objek nombor. Menggunakan objek nombor melambatkan program.
Kaedah Nombor JavaScript
Berikut adalah senarai kaedah nombor terbina dalam JavaScript.
Kaedah | Penerangan |
---|---|
isNaN () | menentukan sama ada nilai lulus adalah NaN |
isFinite () | menentukan sama ada nilai lulus adalah nombor terhingga |
isInteger () | menentukan sama ada nilai lulus adalah nombor bulat |
isSafeInteger () | menentukan sama ada nilai lulus adalah integer yang selamat |
parseFloat (tali) | menukar rentetan terangka angka ke nombor titik terapung |
parseInt (rentetan, (radix)) | menukar rentetan angka menjadi integer |
toExponential (pecahanDigit) | returns a string value for a number in exponential notation |
toFixed(digits) | returns a string value for a number in fixed-point notation |
toPrecision() | returns a string value for a number to a specified precision |
toString((radix)) | returns a string value in a specified radix(base) |
valueof() | returns the numbers value |
toLocaleString() | returns a string with a language sensitive representation of a number |
For example,
// check if a is integer const a = 12; console.log(Number.isInteger(a)); // true // check if b is NaN const b = NaN; console.log(Number.isNaN(b)); // true // display upto two decimal point const d = 5.1234; console.log(d.toFixed(2)); // 5.12
JavaScript Number Properties
Here is a list of Number properties in JavaScript.
Property | Description |
---|---|
EPSILON | returns the smallest interval between two representable numbers |
MAX_SAFE_INTEGER | returns the maximum safe integer |
MAX_VALUE | returns the largest possible value |
MIN_SAFE_INTEGER | returns the minimum safe integer |
MIN_VALUE | returns the smallest possible value |
NaN | represents 'Not-a-Number' value |
NEGATIVE_INFINITY | represents negative infinity |
POSITIVE_INFINITY | mewakili infiniti positif |
prototaip | membenarkan penambahan sifat ke objek Nombor |
Sebagai contoh,
// largest possible value const a = Number.MAX_VALUE; console.log(a); // 1.7976931348623157e+308 // maximum safe integer const a = Number.MAX_SAFE_INTEGER; console.log(a); // 9007199254740991
Nombor JavaScript () Fungsi
Yang Number()
fungsi digunakan untuk menukar pelbagai jenis data untuk nombor. Sebagai contoh,
const a = '23'; // string const b = true; // boolean //converting to number const result1 = Number(a); const result2 = Number(b); console.log(result1); // 23 console.log(result2); // 1
Sekiranya anda ingin mengetahui lebih lanjut mengenai penukaran nombor, lawati Penukaran Jenis JavaScript.