Tutorial JS

JS RUMAH Pengenalan JS JS Dimana Keluaran JS Pernyataan JS Sintaks JS Komentar JS Variabel JS JS Let JS Const Operator JS JS Aritmatika Tugas JS Tipe Data JS Fungsi JS Objek JS Acara JS String JS Metode String JS Pencarian String JS Template String JS Nomor JS Metode Nomor JS JS Array Metode Array JS Sortir Array JS Iterasi Array JS JS Array Const Tanggal JS Format Tanggal JS Metode Dapatkan Tanggal JS Metode Penetapan Tanggal JS JS Matematika JS Acak JS Boolean Perbandingan JS Ketentuan JS Beralih JS JS Loop Untuk JS Loop Untuk Masuk JS Loop Untuk Of JS Loop Sementara Istirahat JS JS Iterable JS Set Peta JS Tipe JS Konversi Tipe JS JS Bitwise JS RegExp Kesalahan JS Lingkup JS Pengangkatan JS Mode Ketat JS JS Kata Kunci ini Fungsi Panah JS Kelas JS JS JSON Debug JS Panduan Gaya JS Praktik Terbaik JS Kesalahan JS Kinerja JS Kata-kata Cadangan JS

Versi JS

Versi JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Tepi Sejarah JS

Objek JS

Definisi Objek Properti Objek Metode Objek Tampilan Objek Aksesor Objek Konstruktor Objek Prototipe Objek Obyek Iterable Set Objek Peta Objek Referensi Objek

Fungsi JS

Definisi Fungsi Parameter Fungsi Panggilan Fungsi Panggilan Fungsi Fungsi Terapkan Penutupan Fungsi

Kelas JS

Perkenalan Kelas Warisan Kelas Kelas Statis

JS Asinkron

Panggilan Balik JS JS Asinkron JS Janji JS Async/Menunggu

JS HTML DOM

Pengenalan DOM Metode DOM Dokumen DOM Elemen DOM HTML DOM Formulir DOM CSS DOM Animasi DOM Acara DOM Pendengar Acara DOM Navigasi DOM Node DOM Koleksi DOM Daftar Node DOM

JS Browser BOM

Jendela JS Layar JS Lokasi JS Sejarah JS JS Navigator Peringatan Munculan JS Waktu JS JS Cookies

JS Web API

Pengantar API Web API Formulir Web API Riwayat Web API Penyimpanan Web API Pekerja Web API Pengambilan Web API Geolokasi Web

JS AJAX

Pengenalan AJAX AJAX XMLHttp Permintaan AJAX Tanggapan AJAX File XML AJAX AJAX PHP AJAX ASP Basis Data AJAX Aplikasi AJAX Contoh AJAX

JS JSON

Perkenalan JSON Sintaks JSON JSON vs XML Tipe Data JSON Penguraian JSON Stringify JSON Objek JSON Array JSON Server JSON JSON PHP JSON HTML JSON JSONP

JS vs jQuery

Pemilih jQuery jQuery HTML jQuery CSS jQuery DOM

Grafik JS

Grafik JS JS Kanvas JS Plotly JS Chart.js Bagan Google JS JS D3.js

Contoh JS

Contoh JS JS HTML DOM Masukan HTML JS Objek HTML JS Acara HTML JS JS Browser Editor JS Latihan JS kuis JS Sertifikat JS

Referensi JS

Objek JavaScript Objek DOM HTML


Nomor JavaScript


JavaScript hanya memiliki satu jenis angka. Angka dapat ditulis dengan atau tanpa desimal.


Contoh

let x = 3.14;    // A number with decimals
let y = 3;       // A number without decimals

Bilangan ekstra besar atau ekstra kecil dapat ditulis dengan notasi ilmiah (eksponen):

Contoh

let x = 123e5;    // 12300000
let y = 123e-5;   // 0.00123


Nomor JavaScript Selalu Floating Point 64-bit

Tidak seperti banyak bahasa pemrograman lainnya, JavaScript tidak mendefinisikan berbagai jenis angka, seperti bilangan bulat, pendek, panjang, floating-point dll.

Nomor JavaScript selalu disimpan sebagai nomor floating point presisi ganda, mengikuti standar internasional IEEE 754.

Format ini menyimpan angka dalam 64 bit, di mana angka (pecahan) disimpan dalam bit 0 hingga 51, eksponen dalam bit 52 hingga 62, dan bit masuk 63:

Nilai (alias Pecahan/Mantissa) Eksponen Tanda
52 bit (0 - 51)  11 bit (52 - 62) 1 bit (63)

Presisi Bilangan Bulat

Bilangan bulat (angka tanpa titik atau notasi eksponen) akurat hingga 15 digit.

Contoh

let x = 999999999999999;   // x will be 999999999999999
let y = 9999999999999999;  // y will be 10000000000000000

Jumlah desimal maksimum adalah 17.

Mengambang Presisi

Aritmatika floating point tidak selalu 100% akurat:

let x = 0.2 + 0.1;

Untuk mengatasi masalah di atas, ada baiknya mengalikan dan membagi:

let x = (0.2 * 10 + 0.1 * 10) / 10;


Menambahkan Angka dan String

PERINGATAN !!

JavaScript menggunakan operator + untuk penambahan dan penggabungan.

Angka ditambahkan. String digabungkan.

Jika Anda menambahkan dua angka, hasilnya akan menjadi angka:

Contoh

let x = 10;
let y = 20;
let z = x + y;

Jika Anda menambahkan dua string, hasilnya akan menjadi rangkaian string:

Contoh

let x = "10";
let y = "20";
let z = x + y;

Jika Anda menambahkan angka dan string, hasilnya akan menjadi rangkaian string:

Contoh

let x = 10;
let y = "20";
let z = x + y;

Jika Anda menambahkan string dan angka, hasilnya akan menjadi rangkaian string:

Contoh

let x = "10";
let y = 20;
let z = x + y;

Kesalahan umum adalah mengharapkan hasil ini menjadi 30:

Contoh

let x = 10;
let y = 20;
let z = "The result is: " + x + y;

Kesalahan umum adalah mengharapkan hasil ini menjadi 102030:

Contoh

let x = 10;
let y = 20;
let z = "30";
let result = x + y + z;

Interpreter JavaScript bekerja dari kiri ke kanan.

10 + 20 pertama ditambahkan karena x dan y keduanya bilangan.

Kemudian 30 + "30" digabungkan karena z adalah string.


String Numerik

String JavaScript dapat memiliki konten numerik:

let x = 100;         // x is a number

let y = "100";       // y is a string

JavaScript akan mencoba mengonversi string menjadi angka di semua operasi numerik:

Ini akan bekerja:

let x = "100";
let y = "10";
let z = x / y;

Ini juga akan berfungsi:

let x = "100";
let y = "10";
let z = x * y;

Dan ini akan berhasil:

let x = "100";
let y = "10";
let z = x - y;

Tapi ini tidak akan berhasil:

let x = "100";
let y = "10";
let z = x + y;

Dalam contoh terakhir JavaScript menggunakan operator + untuk menggabungkan string.


NaN - Bukan Angka

NaNadalah kata khusus JavaScript yang menunjukkan bahwa suatu nomor bukan nomor resmi.

Mencoba melakukan aritmatika dengan string non-numerik akan menghasilkan NaN(Bukan Angka):

Contoh

let x = 100 / "Apple";

Namun, jika string berisi nilai numerik , hasilnya akan berupa angka:

Contoh

let x = 100 / "10";

Anda dapat menggunakan fungsi JavaScript global isNaN() untuk mengetahui apakah suatu nilai bukan angka:

Contoh

let x = 100 / "Apple";
isNaN(x);

Hati-hati untuk NaN. Jika Anda menggunakan NaNdalam operasi matematika, hasilnya juga akan NaN:

Contoh

let x = NaN;
let y = 5;
let z = x + y;

Atau hasilnya mungkin rangkaian seperti NaN5:

Contoh

let x = NaN;
let y = "5";
let z = x + y;

NaNadalah angka: typeof NaNkembali number:

Contoh

typeof NaN;

ketakterbatasan

Infinity(atau -Infinity) adalah nilai yang akan dikembalikan JavaScript jika Anda menghitung angka di luar angka terbesar yang mungkin.

Contoh

let myNumber = 2;
// Execute until Infinity
while (myNumber != Infinity) {
  myNumber = myNumber * myNumber;
}

Pembagian dengan 0 (nol) juga menghasilkan Infinity:

Contoh

let x =  2 / 0;
let y = -2 / 0;

Infinityadalah nomor: typeof Infinitykembali number.

Contoh

typeof Infinity;

Heksadesimal

JavaScript menafsirkan konstanta numerik sebagai heksadesimal jika didahului oleh 0x.

Contoh

let x = 0xFF;

Jangan pernah menulis angka dengan nol di depan (seperti 07).
Beberapa versi JavaScript menafsirkan angka sebagai oktal jika ditulis dengan angka nol di depan.

Secara default, JavaScript menampilkan angka sebagai basis 10 desimal.

Tetapi Anda dapat menggunakan toString()metode untuk menampilkan angka dari basis 2 ke basis 36 .

Heksadesimal adalah basis 16 . Desimal adalah basis 10 . Oktal adalah basis 8 . Biner adalah basis 2 .

Contoh

let myNumber = 32;
myNumber.toString(10);
myNumber.toString(32);
myNumber.toString(16);
myNumber.toString(8);
myNumber.toString(2);

Nomor JavaScript sebagai Objek

Biasanya angka JavaScript adalah nilai primitif yang dibuat dari literal:

let x = 123;

Tetapi angka juga dapat didefinisikan sebagai objek dengan kata kunci new:

let y = new Number(123);

Contoh

let x = 123;
let y = new Number(123);

Jangan membuat objek Number.

Kata newkunci memperumit kode dan memperlambat kecepatan eksekusi.

Objek Angka dapat menghasilkan hasil yang tidak terduga:

Saat menggunakan ==operator, x dan y sama :

let x = 500;
let y = new Number(500);

Saat menggunakan ===operator, x dan y tidak sama .

let x = 500;
let y = new Number(500);

Perhatikan perbedaan antara (x==y)dan (x===y).

(x == y) benar atau salah?

let x = new Number(500);
let y = new Number(500);

(x === y) benar atau salah?

let x = new Number(500);
let y = new Number(500);

Comparing two JavaScript objects always returns false.

Complete JavaScript Number Reference

For a complete Number reference, visit our:

Complete JavaScript Number Reference.

The reference contains descriptions and examples of all Number properties and methods.