Kodealgo

15 Method Number JavaScript yang Perlu Diketahui

Method Number dapat membantu kita dalam memanipulasi data angka, kita tidak perlu membuat fungsi untuk memanipulasi angka secara manual.

JavaScript sudah menyediakan banyak method number yang dapat digunakan secara langsung.

Misalnya, jika kita ingin memformat angka ke notasi fixed-point, bisa menggunakan method toFixed(), kita juga bisa menentukan jumlah digit pecahan sesuai keinginan.

Berikut daftar topik yang akan kita bahas terkait method Number.

  1. Apa Itu Method Number?
  2. Daftar Method Number
    1. toExponential()
    2. toFixed()
    3. toPrecision()
    4. toString()
    5. toLocaleString()
    6. Number.MAX_SAFE_INTEGER
    7. Number.MIN_SAFE_INTEGER
    8. Number.MAX_VALUE
    9. Number.MIN_VALUE
    10. Number.isFinite()
    11. Number.isInteger()
    12. Number.isNaN()
    13. Number.isSafeInteger()
    14. Number.parseFloat()
    15. Number.parseInt()

Apa Itu Method Number?

Method Number adalah fungsi yang ada di dalam objek Number. Ini dapat memudahkan kita dalam memanipulasi data angka.

Meskipun kita membuat angka primitif secara langsung menggunakan sintaks literal atau fungsi Number(), method dan properti di dalam objek Number bisa kita gunakan.

Oleh karena itu, jangan bingung ketika kita tiba-tiba bisa mengakses properti dan method, itu semua ada di dalam objek Number.

Daftar Method Number

Daftar yang ada di sini sebetulnya tidak hanya method atau fungsi biasa, tapi juga ada beberapa properti dan method statis.

Untuk mengakses method atau properti statis kita perlu menulis nama objek (Number), diikuti notasi titik, lalu diakhiri nama properti atau method statis yang ingin diakses.

Contoh:

Number.MAX_SAFE_INTEGER; // properti statis
Number.isInteger(); // method statis

Sedangkan method biasa atau prototipe, bisa diakses seperti biasa.

Contoh:

(2).toString(); // prototipe atau method biasa

// kode di atas sama saja seperti ini:

const a = 2;
a.toString();

Berikut daftar method dan properti Number yang tersedia di JavaScript:

toExponential()

toExponential() mengonversi angka ke notasi eksponensial dan mengembalikannya sebagai string.

Sintaks

toExponential(digitPecahan);

Parameter

  • digitPecahan (optional): bilangan bulat yang menentukan jumlah digit pecahan (angka setelah titik).

Nilai Kembalian

String dalam notasi eksponensial, yang mewakili objek Number.

Contoh

(2).toExponential(3); // 2.000e+0

toFixed()

toFixed() memformat angka ke notasi fixed-point.

Sintaks

toFixed(digitPecahan);

Parameter

  • digitPecahan (optional): bilangan bulat yang menentukan jumlah digit pecahan (angka setelah titik) yang ingin dimunculkan.

Nilai Kembalian

String dalam notasi fixed-point yang mewakili angka sumber.

Contoh

(2).toFixed(3); // 2.000
(2.2543).toFixed(3); // 2.254
(2.26).toFixed(1); // 2.3
(2.23).toFixed(1); // 2.2

toPrecision()

toPrecision() memformat angka agar memiliki panjang yang ditentukan.

Sintaks

toPrecision(jumlahDigit);

Parameter

  • jumlahDigit (optional): bilangan bulat yang menentukan jumlah digit.

Nilai Kembalian

String yang mewakiliki objek Number dalam notasi fixed-point atau eksponensial yang dibulatkan.

Contoh

(2).toPrecision(3); // 2.00
(2.2543).toPrecision(3); // 2.25
(2.26).toPrecision(2); // 2.3
(2.23).toPrecision(1); // 2

toString()

toString() mengonversi angka menjadi string.

Sintaks

toString(radix);

Parameter

  • radix (optional): basis yang digunakan untuk mewakili nilai numerik, harus bilangan bulat antara 2 hingga 36. 2 mengembalikan biner, 8 bilangan oktal, 16 heksadesimal.

Nilai Kembalian

Mengembalikan string yang sesuai dengan basis yang ditentukan.

Contoh

(19).toString(); // 19
(19).toString(2); // 10011
(19).toString(8); // 23
(19).toString(16); // 13

toLocaleString()

toLocaleString() memformat angka menjadi string sesuai dengan bahasa atau lokasi yang ditentukan atau runtime JavaScript jika tidak ditentukan.

Sintaks

toLocaleString(locales, options);

Parameter

  • locales (optional): kode bahasa untuk menentukan format angka, seperti id-ID, en-US, ar-SA dan sebagainya. Jika tidak ditentukan akan menggunakan bahasa default runtime JavaScript.
  • options (optional): objek untuk menentukan format angka.
    • currency: kode mata uang seperti IDR, EUR, USD dan sebagainya.
    • currencyDisplay: menentukan cara mata uang ditampilkan dalam format mata uang, dapat berisi symbol (default), code, atau name.
    • localeMatcher: algoritma pencocokan bahasa yang akan digunakan, lookup atau best fit (default).
    • maximumFractionDigits: jumlah maksimum digit pecahan yang akan digunakan, nilai dapat berisi 0 hingga 10, default 3.
    • minimumFractionDigits: jumlah minimum digit pecahan yang akan digunakan, nilai dapat berisi 0 hingga 20, default untuk pemformatan angka dan persen adalah 0, sedangkan mata uang sesuai ISO 4217.
    • maximumSignificantDigits: jumlah maksimum significant digits yang akan digunakan, antara 1 hingga 21, defaulnya 21.
    • minimumSignificantDigits: jumlah minimum significant digits, antara 1 hingga 21, defaulnya 1.
    • minimumIntegerDigits: jumlah minimum digit bilangan bulat, 1 hingga 21, defaultnya 1.
    • style gaya pemformatan, decimal (default), currency, percent, atau unit.
    • useGrouping: menentukan apakah akan menggunakan pemisah seperti ribuan, dapat berisi true (default) atau false.

Nilai Kembalian

Mengembalikan string yang sesuai dengan format angka yang ditentukan atau sesuai runtime (tempat JavaScript dijalankan) jika tidak ditentukan.

Contoh

(203400).toLocaleString(); // 203.400

(203400).toLocaleString('id-ID'); // 203.400

(203400).toLocaleString('en-US'); // 203,400

(203400).toLocaleString('ar-SA'); // ٢٠٣٬٤٠٠

(203400).toLocaleString('id-ID', {
  currency: 'IDR',
  currencyDisplay: 'symbol',
  style: 'currency',
}); // Rp 203.400,00

(203400).toLocaleString('id-ID', {
  currency: 'IDR',
  currencyDisplay: 'symbol',
  style: 'currency',
  minimumFractionDigits: 0,
}); // Rp 203.400

(203400).toLocaleString('en-US', {
  currency: 'USD',
  currencyDisplay: 'code',
  style: 'currency',
}); // USD 203,400.00

(0.99).toLocaleString('id-ID', {
  style: 'percent',
}); // 99%

Number.MAX_SAFE_INTEGER

Number.MAX_SAFE_INTEGER mengembalikan bilangan bulat maksimum yang aman dalam JavaScript. Lebih dari itu dapat ditafsirkan secara salah.

Number.MAX_SAFE_INTEGER; // 9007199254740991

Number.MIN_SAFE_INTEGER

Number.MIN_SAFE_INTEGER mengembalikan bilangan bulat minimum yang aman dalam JavaScript. Kurang dari itu dapat ditafsirkan secara salah.

Number.MIN_SAFE_INTEGER; // -9007199254740991

Number.MAX_VALUE

Number.MAX_VALUE mengembalikan nilai numerika maksimum yang dapat direpresentasikan JavaScript. Lebih besar dari itu akan direpresentasikan sebagai Infinity.

Number.MAX_VALUE; // 1.7976931348623157e+308

Number.MIN_VALUE

Number.MIN_VALUE mengembalikan nilai numerika positif terkecil yang dapat direpresentasikan JavaScript (bukan angka paling negatif), tapi angka yang paling mendekati 0.

Number.MIN_VALUE; // 5e-324

Number.isFinite()

Number.isFinite() mengecek apakah suatu nilai adalah bilangan terhingga atau tak terhingga.

Sintaks

Number.isFinite(nilai);

Parameter

  • nilai: nilai yang diuji.

Nilai Kembalian

Mengembalikan nilai Boolean, true jika nilai yang diuji terhingga, atau false jika tak terhingga.

Contoh

Number.isFinite(Infinity); // false
Number.isFinite(NaN); // false
Number.isFinite(-Infinity); // false
Number.isFinite(5 / 0); // false
Number.isFinite(5); // true

Number.isInteger()

Number.isInteger() mengecek apakah suatu nilai bilangan bulat atau bukan.

Sintaks

Number.isInteger(nilai);

Parameter

  • nilai: nilai yang diuji.

Nilai Kembalian

Mengembalikan nilai Boolean, true jika nilai yang diuji bulat, atau false jika pecahan.

Contoh

Number.isInteger(2.4); // false
Number.isInteger(3); // true

Number.isNaN()

Number.isNaN() mengecek aapakah suatu nilai adalah NaN atau bukan.

Sintaks

Number.isNaN(nilai);

Parameter

  • nilai: nilai yang diuji.

Nilai Kembalian

Mengembalikan nilai Boolean, true jika nilai yang diuji NaN, atau false jika bukan.

Contoh

Number.isNaN(NaN); // true
Number.isNaN('NaN'); // false
Number.isNaN(2); // false

Number.isSafeInteger()

Number.isSafeInteger() mengecek apakah suatu nilai adalah bilangan bulat aman, atau berada dalam rentang Number.MIN_SAFE_INTEGER dan Number.MAX_SAFE_INTEGER.

Sintaks

Number.isSafeInteger(nilai);

Parameter

  • nilai: nilai yang diuji.

Nilai Kembalian

Mengembalikan nilai Boolean, true jika nilai yang diuji adalah bilangan bulat aman, atau false jika bukan.

Contoh

const maxInt = Number.MAX_SAFE_INTEGER;
Number.isSafeInteger(maxInt + 1); // false
Number.isSafeInteger(maxInt); // true
Number.isSafeInteger(maxInt - 1); // true

const minInt = Number.MIN_SAFE_INTEGER;
Number.isSafeInteger(minInt + 1); // true
Number.isSafeInteger(minInt); // true
Number.isSafeInteger(minInt - 1); // false

Number.parseFloat()

Number.parseFloat() mengurai atau mengekstrak argumen string dan mengembalikan nilai floating point atau angka yang terdapat dalam string.

Sintaks

Number.parseFloat(string);

Parameter

  • string: nilai yang akan diesktrak.

Nilai Kembalian

Mengembalikan nilai angka hasil ekstrak, atau NaN jika karakter pertama dalam string tidak dapat dikoversi ke angka.

Contoh

Number.parseFloat('4.5abc222abcdefgh'); // 4.5
Number.parseFloat('b4.5abc222abcdefgh'); // NaN

Number.parseInt()

Number.parseInt() mengurai atau mengekstrak argumen string dan mengembalikan nilai integer atau bilangan bulat dari radix atau basis tertentu.

Sintaks

Number.parseInt(string);

Parameter

  • string: nilai yang akan diesktrak.
  • radix (optional): bilangan bulat antara 2 sampai 36 yang mewaliki radix (basis dalam sistem bilangan matematika).

Nilai Kembalian

Mengembalikan bilangan bulat hasil ekstrak, atau nilai jika karakter pertama dalam string tidak dapat dikoversi ke angka.

Contoh

Number.parseInt('4.5abc222abcdefgh'); // 4
Number.parseInt('b4.5abc222abcdefgh'); // NaN
Number.parseInt('b4.5abc222abcdefgh', 36); // 400
Number.parseInt('0xf', 16); // 15