Введение в JavaScript
JavaScript — язык программирования, который выполняется в браузере и на сервере (Node.js). Это единственный язык, который браузер понимает «из коробки».
Где используется
- Фронтенд — интерактивность на сайтах: клики, формы, анимации
- Бэкенд — Node.js, серверы, API
- Мобильные — React Native, Ionic
- Десктоп — Electron, Tauri
- Скрипты — автоматизация, CLI
Как запустить
В браузере
Открой DevTools (F12) → Console. Можно писать код прямо там.
console.log('Hello, world!');
В файле
<script src="main.js"></script>
Через Node.js
node main.js
Стандарты
JavaScript развивается по спецификации ECMAScript. Версии:
- ES5 (2009) — старая база
- ES6 / ES2015 — большой скачок:
let,const, стрелочные функции, классы, модули - ES2016+ — ежегодные небольшие обновления
- ES2022+ — современный стандарт: top-level await,
.at(), private-поля
Режимы
Обычный
Мягкий режим с прощающими ошибками.
Строгий (strict mode)
Включается директивой 'use strict'. Ловит ошибки раньше, запрещает неявные глобальные переменные.
'use strict';
x = 10; // ошибка: x не объявлена
В модулях и классах strict включён по умолчанию.
Типизация
JavaScript динамически типизирован. Переменная может хранить что угодно:
let value = 'строка';
value = 42;
value = { foo: 'bar' };
Тип определяется в момент выполнения. Для статической типизации используют TypeScript.
Слабые и сильные стороны
Плюсы:
- Работает везде
- Огромная экосистема (npm)
- Низкий порог входа
- Асинхронность из коробки
Минусы:
- Много исторических странностей
- Неявные приведения типов
- Динамическая типизация может скрывать ошибки
- Разное поведение в браузерах (исторически)
Что дальше
Основы синтаксиса: переменные, типы, операторы, условия. Затем — функции, массивы, объекты, асинхронность, DOM.
Итоги
- JavaScript — основной язык веба
- Работает в браузере и на сервере
- Развивается по стандарту ECMAScript
- Динамическая типизация
- Strict mode ловит ошибки