Урок 1 из 8 · 15 мин · обновлено

Как работает JavaScript: переменные и типы данных

Где выполняется JavaScript, как запустить первый код в консоли браузера, чем let отличается от const и какие бывают типы данных.

Что такое JavaScript

JavaScript — язык программирования, который делает веб-страницы интерактивными. HTML отвечает за содержимое страницы, CSS — за внешний вид, а JavaScript — за поведение: что произойдёт, когда вы нажмёте кнопку, введёте текст или прокрутите страницу.

Браузер загружает код вместе со страницей и выполняет его прямо на компьютере пользователя. А благодаря платформе Node.js на JavaScript пишут и серверы — то есть один язык работает по обе стороны сайта.

Где запускать код

Ничего устанавливать не нужно: в каждом браузере есть консоль.

  1. Откройте любую страницу и нажмите F12 (на Mac — Cmd+Option+I).
  2. Перейдите на вкладку Console.
  3. Введите код и нажмите Enter. Чтобы перейти на новую строку, не запуская код, нажмите Shift+Enter.

Первая команда:

JavaScript
console.log("Привет, мир!");
console.log(2 + 3);

console.log() выводит значение в консоль — это главный способ посмотреть, что происходит в программе. Точку с запятой в конце строки ставить принято: она обозначает конец команды.

Переменные: let и const

Переменная — это имя, под которым хранится значение.

JavaScript
const name = "Анна";
let age = 25;

age = 26;          // let можно переприсвоить
console.log(name, age);   // Анна 26
  • const — значение нельзя заменить другим. Попытка name = "Иван" вызовет ошибку.
  • let — значение можно менять.

Правило, которому следуют разработчики: по умолчанию пишите const, а let — только когда переменная действительно будет меняться. Так код проще читать: сразу видно, что меняется, а что нет.

В старом коде вы встретите ещё var — это устаревший способ, у него неочевидное поведение. В новом коде его не используют.

Имена переменных в JavaScript принято писать в стиле camelCase: слова слитно, каждое следующее с заглавной буквы — userName, totalPrice.

Типы данных

Тип Что хранит Пример
number число — и целое, и дробное 42, 3.14
string строка "Привет", '42'
boolean логическое значение true, false
undefined значение ещё не присвоено let x;
null «значения нет», задаётся сознательно let user = null;

Есть ещё объекты и массивы — о них уроки 6 и 8.

Узнать тип помогает оператор typeof:

JavaScript
console.log(typeof 42);       // "number"
console.log(typeof "42");     // "string"
console.log(typeof true);     // "boolean"

let city;
console.log(city);            // undefined

В отличие от некоторых языков, в JavaScript нет отдельного типа для целых и дробных чисел: 42 и 3.14 — оба number.

Попробуйте сами. Откройте консоль и создайте переменные: имя (не будет меняться) и количество выполненных задач (будет расти). Увеличьте количество задач на 1 и выведите обе переменные. Затем проверьте их типы через typeof.

Решение
JavaScript
const userName = "Анна";
let doneTasks = 3;

doneTasks = doneTasks + 1;
console.log(userName, doneTasks);   // Анна 4
console.log(typeof userName);       // "string"
console.log(typeof doneTasks);      // "number"

Имя объявлено через const, потому что не меняется, а счётчик — через let: его значение обновляется.

Мини-тест: проверьте себя

Закрепите урок: несколько вопросов, разбор ответов — в конце.

  1. Где выполняется JavaScript, который подключён к сайту?

  2. Чем let отличается от const?

  3. Что вернёт typeof '42'?

  4. Что означает undefined?