JavaVariabel Skrip: Deklarasi, Tetapkan Nilai dengan Contoh
⚡ Ringkasan Cerdas
JavaVariabel skrip menyimpan nilai seperti nama dan angka, atau hasil dari suatu ekspresi. Mendeklarasikan variabel dengan `var`, `let`, atau `const` akan memesan slot bernama yang dapat dibaca dan diperbarui oleh bagian skrip lainnya.
Variabel digunakan untuk menyimpan nilai (nama = “John”) atau ekspresi (jumlah = x + y). Setiap nilai yang disimpan skrip untuk nanti — nama pengguna, total berjalan, bendera ya atau tidak — tersimpan dalam sebuah variabel, jadi mendeklarasikan dan menamainya dengan baik adalah keterampilan pertama yang harus dipelajari. JavaNaskah.
Deklarasikan Variabel di JavaNaskah
Sebelum menggunakan variabel, Anda perlu mendeklarasikannya terlebih dahulu. Anda harus menggunakan kata kunci `var` untuk mendeklarasikan variabel seperti ini:
var name;
Deklarasi itu sendiri hanya menciptakan nama dan tidak lebih. Pada titik ini, variabel tersebut ada tetapi menyimpan nilai khusus "undefined", karena belum ada nilai yang dimasukkan ke dalamnya.
⚠️ Catatan versi: `var` adalah kata kunci deklarasi asli dan masih berfungsi di setiap browser. ES6 (2015) menambahkan membiarkan ke const, yang merupakan kata kunci modern JavaSkrip digunakan. Keduanya dibandingkan dengan variabel di bagian bawah halaman ini.
Tetapkan Nilai ke Variabel
Anda dapat memberikan nilai pada variabel saat mendeklarasikan variabel atau setelah mendeklarasikan variabel.
var name = "John";
OR
var name; name = "John";
Kedua bentuk tersebut menghasilkan hasil yang sama. Tanda sama dengan tunggal adalah ... operator penugasan: Ini menyalin nilai di sebelah kanannya ke variabel di sebelah kirinya. Ini bukan uji kesamaan, yang ditulis == atau === dan termasuk dalam pernyataan bersyarat.
Penamaan Variabel
Meskipun Anda dapat memberi nama variabel sesuka Anda, memberikan nama yang deskriptif dan bermakna pada variabel adalah praktik pemrograman yang baik. Selain itu, nama variabel harus diawali dengan huruf dan peka terhadap huruf besar dan kecil. Oleh karena itu, variabel studentname dan studentName berbeda karena huruf n dalam namanya berbeda (n dan N).
Empat aturan menentukan apakah suatu nama sah atau tidak:
- Karakter pertama harus berupa huruf, tanda dolar, atau garis bawah — tidak pernah berupa angka.
- Setelah karakter pertama, huruf, angka, tanda dolar, dan garis bawah semuanya diperbolehkan.
- Spasi tidak diperbolehkan, oleh karena itu ide yang terdiri dari dua kata digabungkan menjadi studentName dan tidak dibiarkan sebagai dua kata terpisah.
- Kata-kata yang dicadangkan seperti var, let, const, class, dan return tidak dapat digunakan kembali sebagai nama.
Sesuai konvensi JavaNama skrip menggunakan camelCase, jadi kata pertama ditulis dengan huruf kecil dan setiap kata berikutnya diawali dengan huruf kapital: firstName, totalPrice, isLoggedIn.
Skrip di bawah ini mendeklarasikan dua variabel, menerapkan lima operator aritmatika pada keduanya, dan menulis setiap hasilnya ke halaman. Cobalah sendiri:
<html>
<head>
<title>Variables!!!</title>
<script type="text/javascript">
var one = 22;
var two = 3;
var add = one + two;
var minus = one - two;
var multiply = one * two;
var divide = one/two;
document.write("First No: = " + one + "<br />Second No: = " + two + " <br />");
document.write(one + " + " + two + " = " + add + "<br/>");
document.write(one + " - " + two + " = " + minus + "<br/>");
document.write(one + " * " + two + " = " + multiply + "<br/>");
document.write(one + " / " + two + " = " + divide + "<br/>");
</script>
</head>
<body>
</body>
</html>
var vs let vs const di Modern JavaNaskah
Hanya variabel yang ada ketika JavaScript pertama kali ditulis, dan memiliki dua kebiasaan yang mengejutkan pemula: dapat dideklarasikan ulang secara diam-diam, dan mengabaikan batas blok. `let` dan `const` ditambahkan untuk memperbaiki kedua hal tersebut. Tabel di bawah ini menyajikan ketiga kata kunci tersebut berdampingan.
| Perilaku | adalah | membiarkan | const |
|---|---|---|---|
| Cakupan | Fungsi keseluruhan | Blok penutup | Blok penutup |
| Dapat ditugaskan kembali | Ya | Ya | Tidak |
| Dapat dideklarasikan ulang dalam cakupan yang sama. | Ya | Tidak | Tidak |
| Nilai yang dibutuhkan pada baris deklarasi | Tidak | Tidak | Ya |
| Bacalah sebelum pengumumannya. | Mengembalikan nilai undefined. | Kesalahan Referensi | Kesalahan Referensi |
Kebiasaan sederhana mencakup hampir setiap kasus: raihlah const pertama, beralihlah ke membiarkan saat suatu nilai benar-benar harus berubah, seperti penghitung di dalam salah satu JavaPerulangan skrip, dan pertahankan variabel tersebut untuk membaca kode lama daripada menulis kode baru.
Lingkup Variabel dan Pengangkatan dalam JavaNaskah
Cakupan (scope) menentukan bagian mana dari skrip yang dapat melihat sebuah variabel. Deklarasi `var` termasuk ke fungsi yang memuatnya, sehingga ia keluar dari blok `if` atau `for` di dalam fungsi tersebut. Deklarasi `let` atau `const` termasuk ke dalam sepasang kurung kurawal tempatnya berada dan menghilang di luar kurung kurawal tersebut.
function demo() { if (true) { var wide = "visible throughout demo()"; let narrow = "visible only inside these braces"; } console.log(wide); console.log(narrow); }
Console.log pertama mencetak string-nya. Yang kedua melempar ReferenceError, karena narrow tidak lagi ada setelah blok if berakhir.
mengangkat adalah bagian kedua dari cerita tersebut. JavaScript mendaftarkan setiap deklarasi dalam suatu cakupan sebelum menjalankan satu baris pun dari cakupan tersebut. Nama variabel didaftarkan dan diatur ke tidak terdefinisi, jadi membacanya lebih awal adalah legal tetapi tidak berguna. Nama let atau const didaftarkan tanpa nilai, dan celah antara bagian atas blok dan baris deklarasi disebut spasi. zona mati temporal.
console.log(a); var a = 1; console.log(b); let b = 2;
Baris pertama mencetak "undefined". Baris ketiga berhenti dengan "Cannot access 'b' before initialization" — kesalahan yang membuat `let` lebih aman daripada `var`, karena menunjukkan kesalahan sebenarnya alih-alih menyembunyikannya.
Kesalahan Umum Saat Mendeklarasikan JavaVariabel Skrip
Lima pesan mencakup sebagian besar output konsol yang dilihat pemula saat mempelajari variabel. Masing-masing menyebutkan penyebab spesifik, sehingga perbaikannya biasanya hanya satu baris kode.
| Pesan konsol | Menyebabkan | Memperbaiki |
|---|---|---|
| SyntaxError: Pengidentifikasi 'x' telah dideklarasikan sebelumnya | Kata kunci `let` atau `const` digunakan dua kali untuk nama yang sama dalam satu blok. | Gunakan kembali variabel yang sudah ada, atau ganti nama variabel kedua. |
| TypeError: Penugasan ke variabel konstan | Konstanta diberi nilai baru | Deklarasikan dengan `let` jika nilainya harus diubah. |
| ReferenceError: Tidak dapat mengakses 'x' sebelum inisialisasi | Sebuah let atau const dibaca di dalam zona mati temporal. | Pindahkan bacaan ke bawah garis deklarasi. |
| ReferenceError: x tidak didefinisikan | Nama tersebut tidak pernah diumumkan, atau salah eja. | Nyatakan hal tersebut, atau perbaiki ejaan dan penggunaan huruf besar/kecilnya. |
| Nilai "undefined" muncul di tempat yang seharusnya terdapat nilai. | Variabel tersebut telah dideklarasikan tetapi tidak pernah diberi nilai. | Tetapkan nilai sebelum pembacaan pertama. |
Menambahkan “use strict” di bagian atas file mengubah versi senyap dari kasus keempat — menetapkan nilai ke nama yang tidak pernah dideklarasikan — menjadi kesalahan yang terlihat, itulah sebabnya hal ini harus ada di setiap skrip baru. Aturan variabel yang sama berlaku tanpa perubahan pada array, objek, dan kode sisi server yang ditulis untuk Node.js.
