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; //видалення поля
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ