JavaVarijabla skripte: deklarirajte, dodijelite vrijednost s primjerom
⚡ Pametni sažetak
JavaVarijable skripte pohranjuju vrijednosti poput imena i brojeva ili rezultat izraza. Deklarisanje jedne s var, let ili const rezervira imenovani utor koji ostatak skripte može čitati i ažurirati.
Varijable se koriste za pohranjivanje vrijednosti (ime = “John”) ili izraza (suma = x + y). Svaka vrijednost koju skripta čuva za kasnije - korisničko ime, tekući zbroj, zastavica da ili ne - nalazi se u varijabli, pa je njihovo dobro deklariranje i imenovanje prva vještina koju treba steći JavaScript.
Deklarirajte varijable u JavaScript
Prije korištenja varijable, prvo je morate deklarirati. Morate upotrijebiti ključnu riječ var za deklariranje varijable ovako:
var name;
Sama deklaracija stvara ime i ništa više. U ovom trenutku varijabla postoji, ali sadrži posebnu vrijednost nedefiniranu, jer joj još nije unesena nikakva vrijednost.
⚠️ Napomena o verziji: var je izvorna ključna riječ deklaracije i još uvijek se izvršava u svakom pregledniku. Dodan je ES6 (2015). pustiti i const, koje su ključne riječi moderno JavaUpotreba skripte. Obje su uspoređene s var dalje na ovoj stranici.
Dodijelite vrijednost varijabli
Možete dodijeliti vrijednost varijabli ili tijekom deklaracije varijable ili nakon deklaracije varijable.
var name = "John";
OR
var name; name = "John";
Oba oblika završavaju istim rezultatom. Jednostruki znak jednakosti je operator dodjeljivanja: kopira vrijednost s desne strane u varijablu s lijeve strane. Nije test jednakosti, koji se piše == ili === i pripada u uvjetne izjave.
Imenovanje varijabli
Iako varijable možete imenovati kako želite, dobra je programerska praksa davati varijablama opisna i smislena imena. Štoviše, imena varijabli trebaju počinjati slovom i razlikuju se od velikih i malih slova. Stoga su varijable studentname i studentName različite jer je slovo n u nazivu drugačije (n i N).
Četiri pravila odlučuju je li ime uopće legalno:
- Prvi znak mora biti slovo, znak dolara ili podvlaka - nikada znamenka.
- Nakon prvog znaka dopuštena su slova, brojke, znakovi dolara i podvlake.
- Razmaci nisu dopušteni, zbog čega se ideja od dvije riječi spaja kao ImeStudenta, a ne ostavlja kao dvije riječi.
- Rezervirane riječi poput var, let, const, class i return ne mogu se ponovno koristiti kao imena.
Po konvenciji JavaNazivi skripti koriste camelCase, tako da je prva riječ malo slovo, a svaka sljedeća riječ počinje velikim slovom: firstName, totalPrice, isLoggedIn.
Skripta u nastavku deklarira dvije varijable, primjenjuje na njih pet aritmetičkih operatora i zapisuje svaki rezultat na stranicu. Pokušajte sami:
<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 u Modernu JavaScript
Samo je var postojao kada JavaSkripta je prvi put napisana i ima dvije navike koje iznenađuju početnike: može se tiho ponovno deklarirati i ignorira granice blokova. Dodani su let i const kako bi se ispravili oba problema. Tablica u nastavku prikazuje tri ključne riječi jednu pored druge.
| ponašanje | je | pustiti | const |
|---|---|---|---|
| Djelokrug | Cijela funkcija | Ogradni blok | Ogradni blok |
| Može se preraspodijeliti | Da | Da | Ne |
| Može se ponovno deklarirati u istom opsegu | Da | Ne | Ne |
| Vrijednost obavezna u retku deklaracije | Ne | Ne | Da |
| Pročitajte prije objave | Vraća nedefinirano | Pogreška reference | Pogreška reference |
Jednostavna navika pokriva gotovo svaki slučaj: posegnite za const prvo, prebacite se na pustiti trenutak kada se vrijednost zaista mora promijeniti, kao što je brojač unutar jednog od JavaPetlje skriptei zadržite var za čitanje starog koda umjesto pisanja novog koda.
Promjenjivi doseg i dizanje u JavaScript
Opseg određuje koji dijelovi skripte mogu vidjeti varijablu. Deklaracija var pripada funkciji koja je sadrži, pa izbjegava bilo koji if blok ili for blok unutar te funkcije. Deklaracija let ili const pripada paru zagrada u kojima se nalazi i nestaje izvan njih.
function demo() { if (true) { var wide = "visible throughout demo()"; let narrow = "visible only inside these braces"; } console.log(wide); console.log(narrow); }
Prvi console.log ispisuje svoj niz. Drugi baca ReferenceError, jer narrow više ne postoji nakon što se if blok završi.
Dizanje je druga polovica priče. JavaSkripta registrira svaku deklaraciju u opsegu prije nego što pokrene jedan redak tog opsega. Naziv var je registriran i postavljen na undefined, pa je čitanje rano legalno, ali beskorisno. Naziv let ili const je registriran bez vrijednosti, a razmak između vrha bloka i retka deklaracije naziva se privremena mrtva zona.
console.log(a); var a = 1; console.log(b); let b = 2;
Prvi redak ispisuje nedefinirano. Treći redak završava s „Cannot access 'b' before initialization“ - greškom koja let čini sigurnijim od var, jer pokazuje na stvarnu grešku umjesto da je skriva.
Uobičajene pogreške prilikom deklariranja JavaVarijable skripte
Pet poruka čini većinu konzolnog izlaza koji početnici vide dok uče varijable. Svaka od njih imenuje određeni uzrok, tako da je rješenje obično jedna linija.
| Poruka konzole | Izazvati | Popraviti |
|---|---|---|
| Sintaktička pogreška: Identifikator 'x' je već deklariran | let ili const korišteni dva puta za isto ime u jednom bloku | Ponovno upotrijebite postojeću varijablu ili preimenujte drugu |
| TypeError: dodjela konstantnoj varijabli | Konstanti je dodijeljena nova vrijednost | Deklarirajte ga s let ako se vrijednost mora promijeniti |
| ReferenceError: Nije moguće pristupiti 'x' prije inicijalizacije | Unutar vremenske mrtve zone pročitana je vrijednost let ili const. | Pomaknite tekst ispod crte deklaracije |
| ReferenceError: x nije definiran | Ime nikada nije objavljeno ili je pogrešno napisano | Deklarirajte to ili ispravite pravopis i velika i mala slova |
| Nedefinirano se pojavljuje tamo gdje se očekivala vrijednost | Varijabla je deklarirana, ali nikada nije dodijeljena | Dodijelite vrijednost prije prvog čitanja |
Dodavanje naredbe „use strict“ na vrh datoteke pretvara tihu verziju četvrtog slučaja – dodjeljivanje imenu koje nikada nije deklarirano – u vidljivu grešku, zbog čega pripada svakoj novoj skripti. Ista pravila varijabli prenose se nepromijenjena u nizovi, predmetii kod na strani poslužitelja napisan za Node.js.
