2.1 Variabile și durere

Să începem cu cele mai interesante. JavaScript are variabile, dar acele variabile nu au un tip. Orice variabilă i se poate atribui absolut orice valoare. Pare inofensiv sau chiar la îndemână până când aveți nevoie de tipuri.

Cuvântul cheie este folosit pentru a declara o variabilă var:

var name;
var name = value;

Exemple de lucru cu variabile în JavaScript:

var a = 10, b = 20;
var c = a*a + b*b;

var s = "Diagonal equals:";
console.log( s + Math.sqrt(c));

Cod excelent și clar, nu-i așa? Poate că aceasta este ultima dată în viața ta când vezi un cod JavaScript frumos și ușor de înțeles. Amintește-ți acest moment :)

2.2 Tastarea în JavaScript

După cum sa menționat mai sus, variabilele din limbajul JavaScript nu au un tip. Dar valorile variabilelor au tipuri. Iată cele mai comune 5 tipuri în JavaScript:

# Tip Exemplu Descriere
1 număr
var pi = 3.14;
Conține orice număr
2 Şir
var s = "Hello!";
Conține un șir
3 boolean
var result = true;
Conține adevărat sau fals
4 matrice
var arr = [1, 2, 3, 4, 5];
Conține o serie de elemente
5 Data
var current = new Date();
Conține data
6 Obiect
var o = {
   width: 100,
   height: 200
}
Conține un obiect care constă din perechi cheie, valoare. Ceva similar cu HashMap în Java
7 funcţie
function sqr(var x) {
   return x*x;
}
Funcţie

Cuvântul cheie typeof este folosit pentru a determina tipul unui obiect, de exemplu:

var s = "134";
var x = (typeof s == "String") ? s*1 : s;

2.3 Funcții și returnări

Și, desigur, JavaScript are funcții. Nu există clase, așa că funcțiile pot fi declarate oriunde în cod. Chiar și în alte funcții. Formatul general este:

function name(a, b, c) {
  // function code
   return result;
}

Funcția nu are niciun tip. De ce, dacă nu există control de compatibilitate de tip în limbajul propriu-zis? Este posibil să lipsească și parametrii funcției. La fel este și comanda return, care returnează o valoare.

Când apelați o funcție, puteți transmite orice număr de parametri de orice tip . Excesul va fi aruncat, cei care lipsesc vor fi egali null.

Exemple de funcții:

function getValue(name)
{
    return this[name];
}
function setValue(name, value)
{
    this[name] = value;
}

2.4 Matrice în JavaScript

Matricele din JavaScript sunt foarte asemănătoare cu matricele din Java. Exemple:

var array = [1, 2, 3, 4, 5];
array[3] = array[2];
console.log (array[0]);

Ele pot avea valori de orice tip, chiar și alte matrice:

var array = [1, "Hello", 3.14, [4, 5] ];
array[3] = array[2];
console.log (array[0]);

În plus, tablourile se comportă și ca colecții - le puteți adăuga dinamic elemente:

var array = [];
array.push(100);
array.push(101);
array.push(102);

array[1] = array[2];
console.log (array[0]);

2.5 Obiecte în JavaScript

Obiectele din JavaScript sunt foarte asemănătoare cu HashMap din Java: conțin perechi cheie-valoare. Exemplu:

var obj = {
 name: "Bill Gates",
 age: 67,
 company: "Microsoft"
};

console.log (obj.age);

Câmpurile obiect pot fi accesate în două moduri diferite:

var x = obj.age;
var x = obj["age"];

Ca și în cazul HashMap, câmpurile pot fi create și șterse. Exemplu:

var obj = {};
obj.name = "Bill Gates";
obj.age = 67;
obj.company = "Microsoft";

delete obj.age;  //remove field