JavaScript pertama kali dikembangkan olehBrendan Eich dari Netscape di bawah namaMocha, yang nantinya namanya diganti menjadiLiveScript, dan akhirnya menjadiJavaScript.[14][15]
Navigator sebelumnya telah mendukung Java untuk lebih bisa dimanfaatkan parapemrogram yang non-Java.[16] Maka dikembangkanlahbahasa pemrograman bernamaLiveScript untuk mengakomodasi hal tersebut.[16] Bahasa pemrograman inilah yang akhirnya berkembang dan diberi nama JavaScript, walaupun tidak ada hubungan bahasa antara Java dengan JavaScript.[16]
JavaScript bisa digunakan untuk banyak tujuan, misalnya untuk membuat efekrollover baik di gambar maupun teks, dan yang penting juga adalah untuk membuatAJAX.[16] JavaScript adalah bahasa yang digunakan untuk AJAX.
Browser web pertama denganantarmuka pengguna grafis,Mosaic, dirilis pada tahun 1993. Dapat diakses oleh orang-orang non-teknis, ini memainkan peran penting dalam pertumbuhan pesatWorld Wide Web yang baru lahir.[17] Pengembang utama Mosaic kemudian mendirikanperusahaan Netscape, yang merilis browser yang lebih halus,Netscape Navigator, pada tahun 1994. Ini dengan cepat menjadi yang paling banyak digunakan.[18][19]
Selama tahun-tahun awal Internet, halaman web hanya bisa statis, tanpa perilaku dinamis setelah dimuat ke browser. Karena ada permintaan untuk bahasa scripting di komunitas pengembangan web yang sedang berkembang, Netscape memutuskan untuk memasukkannya ke Navigator pada tahun 1995. Untuk melakukan ini, mereka bekerja dengan Sun Microsystems untuk mengintegrasikan bahasa pemrograman Java, serta merekrut Brendan Eich untuk menanamkan bahasa Skema.[20]
Manajemen Netscape dengan cepat memutuskan bahwa solusi terbaik adalah bagi Eich untuk membuat bahasa baru dengan sintaks yang lebih mirip Java daripada Skema ataubahasa skrip lain yang ada.[20] Meskipun bahasa baru danimplementasi penerjemahnya disebut LiveScript ketika pertama kali dikirimkan sebagai bagian dari Navigatorbeta pada bulan September 1995, nama tersebut diubah menjadi JavaScript untuk rilis resmi pada bulan Desember.[20][21]
Nama JavaScript telah menyebabkan beberapa kebingungan karena menyiratkan bahwa itu terkait langsung dengan Java. Karena ledakan dot-com baru saja dimulai dan Java adalah bahasa baru terpanas saat ini, Eich melihat moniker JavaScript sebagai taktik pemasaran oleh Netscape.[22]
Microsoft memulai debut denganInternet Explorer ditahun 1995, sebagai pengarahperang browser dengan Netscape. Di bagian depan JavaScript, Microsoftmerekayasa balikpenerjemah Navigator untuk membuatnya sendiri, yang disebutJScript.[23]
JScript pertama kali diluncurkan pada tahun 1996, bersamaan dukungan awal untukCSS dan ekstensi keHTML . Masing-masing implementasi ini sangat berbeda dari rekan-rekan mereka di Navigator.[24][25] Karena perbedaan ini, sulit bagi perancang web untuk membuat situs mereka tampil efektif di kedua browser, oleh karena itu logo "terbaik dilihat di Netscape" dan "terbaik dilihat di Internet Explorer" banyak digunakan selama beberapa tahun.[24][26]
"JavaScript" adalah sebuahmerek dagangOracle Corporation di Amerika Serikat.[27][28] Merek dagang ini awalnya di tujukan kepadaSun Microsystems pada tanggal 6 Mei 1997, dan dipindahkan ke Oracle ketika mereka mengakuisisi Sun pada tahun 2009.[29][30]
Sebuah surat diedarkan pada bulan September 2024, dipelopori olehRyan Dahl, menyebutkan pada Oracle untuk membebaskan merek dagan JavaScript.[31]Brendan Eich, pencipta asli JavaScript, merupakan salah satu dari 14.000 penandatangan yang mendukung inisiatif ini.
Penulisan variabel di JavaScript standar tidak mempunyai data type. Semua value dapat disimpan di semua variabel. Variabel dapat ditentukan oleh let (variabel level blok), var (variabel level fungsi) atau const (variabel tak dapat diubah).[38]
Berikut adalah contoh penulisan JavaScript dengan menggunakan var:
Berikut adalah contoh penulisan JavaScript dengan menggunakan let:
letpanjang=5;letlebar=10// penggunaan titik koma dalam JavaScript adalah suatu pilihan opsionalletluas=panjang*lebar;// 50
Berikut adalah contoh penulisan JavaScript dengan menggunakan const:
constangkaPertama=5;constangkaKedua=6;letjumlah=angkaPertama+angkaKedua;
Penulisan komentar (comment) pada JavaScript terdapat dua cara, yaitu komentar untuk satu baris (single line comments) dan komentar untuk lebih dari satu baris (multi-line comments). Baris kode komentar tidak akan dieksekusi oleh JavaScript dan akan diabaikan.[39]
Contoh penulisannya adalah sebagai berikut :
// ini adalah komentar untuk satu barisletkata="Halo!";console.log(kata);
/*ini adalah komentaruntuk lebih dari satu baris.*/letkata="Hai!";console.log(kata);
Operator aritmetika merupakan operator untuk melakukanoperasi aritmetika sepertipenjumlahan,pengurangan,perkalian,pembagian,operasi modulus, dan lain sebagainya.[40] Berikut adalah penulisan operator aritmetika dalam #"ltr" typeof="mw:Extension/syntaxhighlight" about="#mwt134" data-mw='{"name":"syntaxhighlight","attrs":{"lang":"javascript"},"body":{"extsrc":"\n// Berikut adalah operator penjumlahan \nlet angkaPertama = 1;\nlet angkaKedua = 99;\nlet hasilPenjumlahan = angkaPertama + angkaKedua;\n\n// Berikut adalah operator pengurangan \nlet angkaKetiga = 100;\nlet angkaKeempat = 99;\nlet hasilPengurangan = angkaKetiga - angkaKeempat;\n\n// Berikut adalah operator perkalian\nlet angkaKelima = 20;\nlet angkaKeenam = 5; \nlet hasilPerkalian = angkaKelima * angkaKeenam;\n\n// Berikut adalah operator perpangkatan\nlet angkaKetujuh = 2;\nlet angkaKedelapan = 4;\nlet hasilPerpangkatan = angkaKetujuh**angkaKedelapan;\n\n// Berikut adalah operator pembagian \nlet angkaKesembilan = 100;\nlet angkaKesepuluh = 10;\nlet hasilPembagian = angkaKesembilan / angkaKesepuluh;\n\n// Berikut adalah operator sisa bagi atau modulus \nlet angkaKesebelas = 10;\nlet angkaKeduabelas = 2;\nlet hasilModulus = angkaKesebelas % angkaKeduabelas;\n"}}'>
// Berikut adalah operator penjumlahanletangkaPertama=1;letangkaKedua=99;lethasilPenjumlahan=angkaPertama+angkaKedua;// Berikut adalah operator penguranganletangkaKetiga=100;letangkaKeempat=99;lethasilPengurangan=angkaKetiga-angkaKeempat;// Berikut adalah operator perkalianletangkaKelima=20;letangkaKeenam=5;lethasilPerkalian=angkaKelima*angkaKeenam;// Berikut adalah operator perpangkatanletangkaKetujuh=2;letangkaKedelapan=4;lethasilPerpangkatan=angkaKetujuh**angkaKedelapan;// Berikut adalah operator pembagianletangkaKesembilan=100;letangkaKesepuluh=10;lethasilPembagian=angkaKesembilan/angkaKesepuluh;// Berikut adalah operator sisa bagi atau modulusletangkaKesebelas=10;letangkaKeduabelas=2;lethasilModulus=angkaKesebelas%angkaKeduabelas;