Scop
Limbajul computerelor trebuie să utilizeze variabile. De ce asta? În cele mai multe cazuri, programele nu rezolvă probleme individuale, cum ar fi întrebarea foarte concretă: Care este circumferința unui cerc cu o rază de 5 cm? O astfel de întrebare concretă poate fi rezolvată fără a utiliza variabile: alert
În schimb, majoritatea întrebărilor sunt mai generale: Care este circumferința unui cerc cu o rază arbitrară? Nu vrei să scrii un program pentru o rază de 5 cm, un alt program pentru o rază de 6 cm, altul pentru o rază de 7 cm și așa mai departe. Doriți să scrieți un singur program care să calculeze circumferința pentru toate razele posibile. Programul are nevoie de o intrare (de la un utilizator, dintr-un alt program, dintr-o bază de date, …) care să-i spună pentru ce valoare va rula.
(2 * 5 * 3.14);let r = prompt("Cât
sau chiar mai bine:
de mare este raza cercului tău?"); alert (2 * r * 3.14);let r = prompt("Cât de mare este raza cercului tău?"); alert (2 * r
.
* Math.PI);
Aceste două exemple sunt flexibile. Ele cer utilizatorului raza dorită, stochează valoarea dată într-o variabilă cu numele r și calculează circumferința folosind această variabilă. Variabila r este introdusă de cuvântul cheie let
. Și există o a doua variabilă. Modulul Math a predefinit o variabilă PI cu cuvântul cheie const
:
.
const PI = 3.141592653589793;
În JavaScript, variabilele pot fi utilizate în mod similar cu variabilele din formulele matematice. În timpul rulării, valorile variabilelor sunt stocate în memoria principală a computerului (RAM), de unde pot fi folosite într-un moment ulterior în timpul de viață a programului. Vă puteți imagina o variabilă ca o cutie mică în care depui o anumită valoare și o scoți oricând ai nevoie.
Variabilele sunt o piatră de temelie în trecerea de la rezolvarea individuală a problemelor la o strategie, respectiv un algoritm.
Declarație și inițializare
Dacă doriți să utilizați o variabilă, vă recomandăm să o declarați în mod explicit. Acest lucru nu este obligatoriu, dar are avantaje puternice.
În multe cazuri, declarația este însoțită de o inițializare, de ex. let
. Declarația este
x = 0;let x;
, iar inițializarea este
. Dar este și posibil să omiteți partea de inițializare:
x = 0;let
ceea ce face ca valoarea variabilei să fie nedefinită.
x;
Cuvântul cheie let
Cuvântul cheie let
introduce o variabilă a cărei valoare poate fi modificată de mai multe ori.
let x = 0;
// ...
x = x + 5;
// ...
x = -4;
// ...
Cuvântul cheie const
Cuvântul cheie const
introduce o variabilă care trebuie inițializată imediat. În plus, această primă valoare nu poate fi niciodată modificată. Acest lucru ajută motorul JavaScript să optimizeze codul pentru o performanță mai bună. Utilizați const
cât mai des posibil.
const maxCapacity = 100;
// ...
maxCapacity = maxCapacity + 10; // nu este posibil
let maxCapacity = 110; // nu este posibil
Când lucrați cu obiecte, de exemplu, cu matrice, în combinație cu cuvântul cheie const
, este același lucru: nu puteți atribui o altă valoare (obiect, matrice, număr sau orice altceva) variabilei. Cu toate acestea, elementele sale pot fi modificate.
const arr = [1, 2, 3];
arr = [1, 2, 3, 4]; // nu este posibil
arr = new Array(10); // nu este posibil
arr[0] = 5; // ok: 5, 2, 3
alert(arr);
arr.push(42); // ok: 5, 2, 3, 42
alert(arr);
În unele cazuri, variabilele const
sunt scrise cu majuscule, de exemplu, PI
. Aceasta este o convenție și nu este obligatorie.
Cuvântul cheie var
La prima vedere, var
este identic cu let
. Dar intervalul în care sunt cunoscute astfel de variabile este diferit de variabilele declarate de var
; vezi capitolul Scopul de mai jos.
Omiterea declarației
Puteți atribui o valoare unei variabile fără a declara variabila anterior. „JavaScript folosit pentru a permite alocarea unor variabile nedeclarate, ceea ce creează o variabilă globală nedeclarată. Aceasta este o eroare în modul strict și ar trebui evitată cu totul.”[1] Cu alte cuvinte: variabila trece la sfera globală, vezi mai jos. Atâta timp cât nu aveți motive întemeiate, ar trebui să evitați utilizarea domeniului global, deoarece utilizarea acestuia tinde să creeze efecte secundare nedorite.
// utilizarea directă a lui 'radius' fără niciun cuvânt cheie pentru declararea acestuia
/* 1 */ radius = 5;
/* 2 */ alert (2 * radius * 3.14);
Uneori, astfel de situații apar din întâmplare. Dacă există o eroare de tastare în codul sursă, JavaScript utilizează două variabile diferite: cea originală și una nouă cu numele introdus greșit – chiar dacă utilizați unul dintre cuvintele cheie let
, const
sau var
.
let radius = 5; // or without 'let'
alert("Test 1");
// ... mai târziu în cod
radus = 1; // greșeala de scriere nu va fi detectată
alert("Test 2");
Puteți solicita JavaScript să caute astfel de greșeli de scriere prin introducerea comenzii "use strict";
ca prima linie a scripturilor dvs.
"use strict";
let radius = 5;
alert("Test 1");
// ... mai târziu în cod
radus = 1; // va fi detectată greșeala și va fi afișat un mesaj de eroare
alert("Test 2"); // nu se va executa niciodată
(Include texte din Wikibooks traduse și adaptate de Nicolae Sfetcu)
Lasă un răspuns