1. Змінні та біль
Почнемо із найцікавішого. JavaScript має змінні, але у цих змінних немає типу. Для будь-якої змінної можна встановити абсолютно будь-яке значення. Виглядає нешкідливо або навіть зручно, поки тобі не знадобляться типи.
Для оголошення змінної використовується ключове слово var:
var name;
var name = value;
Приклади роботи зі змінними в JavaScript:
var a = 10, b = 20;
var c = a*a + b*b;
var s = "Діагональ дорівнює:";
console.log( s + Math.sqrt(c));
Відмінний і зрозумілий код, чи не так? Можливо, це останній раз у твоєму житті, коли ти бачиш гарний та зрозумілий JavaScript код. Запам'ятай цей момент :)
2. Типізація у JavaScript
Як ми вже говорили, у змінних у мові JavaScript немає типу. Але у значень змінних типи є. Ось 5 найпоширеніших типів JavaScript:
| # | Тип | приклад | Опис |
|---|---|---|---|
| 1 | Номер | |
Містить будь-яке число |
| 2 | String | |
Містить рядок |
| 3 | Boolean | |
Містить true або false |
| 4 | Array | |
Містить масив елементів |
| 5 | Date | |
Містить дату |
| 6 | Object | |
Містить об'єкт, який складається з пар key, value. Чимось схожий на HashMap в Java |
| 7 | Function | |
Функція |
Для визначення типу об'єкта використовується ключове слово typeof, приклад:
var s = "134";
var x = (typeof s == "String") ? s*1 : s;
3. Функції та return
Ну і звісно ж, JavaScript має функції. Класів там немає, тому оголошувати функції можна в будь-якому місці коду. Навіть у інших функціях. Загальний формат має вигляд:
function name(a, b, c) {
// код функції
return result;
}
Типу функції немає. А навіщо, якщо в мові немає контролю сумісності типів? Параметри функції також можуть бути відсутніми. Як і команда return, яка повертає значення.
Під час виклику функції можна передавати будь-яку кількість параметрів будь-якого типу. Зайві відкинуться, відсутні будуть дорівнювати null.
Приклади функцій:
function getValue(name)
{
return this[name];
}
function setValue(name, value)
{
this[name] = value;
}
4. Масиви у JavaScript
Масиви у JavaScript дуже схожі на масиви в Java. Приклади:
var array = [1, 2, 3, 4, 5];
array[3] = array[2];
console.log (array[0]);
Вони можуть мати значення будь-якого типу, навіть інші масиви:
var array = [1, "Привіт", 3.14, [4, 5] ];
array[3] = array[2];
console.log (array[0]);
До того ж, масиви поводяться як колекції – у них можна динамічно додавати елементи:
var array = [];
array.push(100);
array.push(101);
array.push(102);
array[1] = array[2];
console.log (array[0]);
5. Об'єкти в JavaScript
Об'єкти в JavaScript дуже схожі на HashMap у Java: вони містять пари ключ-значення. Приклад:
var obj = {
name: "Bill Gates",
age: 67,
company: "Microsoft"
};
console.log (obj.age);
До полів об'єкта можна звертатися двома різними способами:
var x = obj.age;
var x = obj["age"];
Як і у випадку з HashMap, поля можна створювати та видаляти. Приклад:
var obj = {};
obj.name = "Bill Gates";
obj.age = 67;
obj.company = "Microsoft";
delete obj.age; //видалення поля
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ