
Урок 01 · 10 хв
Значення і змінні
Куди класти дані і як зрозуміти, що саме ти поклав.
Програма зберігає дані в змінних. Оголошень два: const і let. Старий var не використовуй — він видимий за межами блоку, в якому оголошений, і дає баги на рівному місці.
const забороняє переприсвоєння імені, але не забороняє змінювати вміст об'єкта чи масиву. Це різні операції: одна змінює те, на що дивиться ім'я, інша — те, що лежить усередині.
Які бувають значення
number— цілі й дробові однаково. Окремого типу для цілих немає.string— текст:"а",'б'або в зворотних лапках.boolean— рівно два значення:trueіfalse.null— порожньо, і це поставив ти.undefined— значення немає: змінна без присвоєння, відсутня властивість, функція безreturn.object— усе складене: об'єкти, масиви, дати.
Дві відповіді треба просто запам'ятати. Масив — об'єкт, відрізнити його можна через Array.isArray(value). А typeof null === "object" — баг із першої версії мови, який не стали виправляти заради сумісності. На null перевіряй прямо: value === null. Що саме повертає оператор, перелічено в MDN · typeof.
Ім'я змінної складається з літер, цифр, _ і $ і не починається з цифри. Регістр важливий: total і Total — різні імена. Називай за сенсом: itemsCount читається, x — ні. Докладний розбір оголошень — у Grammar and types.
- MDN · const — чому ім'я не можна переприсвоїти
- MDN · let — блочна область видимості
- MDN · typeof — повний список відповідей оператора
- MDN · Grammar and types — оголошення, літерали, зведення типів
Перевірка
Закріпи, поки не пішов далі
1. Що поверне
typeof null?2.
const cart = []; cart.push(1)— що станеться?3. Функцію без
returnвикликано. Що вона повернула?4. Коли брати
letзамістьconst?