Примитивные значения. Все типы, кроме объектов, не могут быть изменены после создания, являются примитивными значениями.
console.log(4);
console.log («это»);
console.log(не определено);
Примитивные типы: string, number, bigint, boolean, undefined, symbol, null.
Функции и объекты не являются примитивными. Их можно изменить после создания.
console.log({});
console.log(x => x * 4);
Выражения.Выражения — это вопросы, на которые может ответить JavaScript. Если мы «спросим» выражения 3 + 3. JavaScript «ответит» значением 6.
console.log(3 + 3); // 6
Особая природа выражений заключается в том, что они всегда приводят к одному значению.
Проверка типа.Используя оператор typeof, мы можем проверить тип значения.
console.log(тип(3)); // "номер"
console.log(typeof("abc"); // "строка"
console.log(typeof(undefined); // «не определено»
Стек вызовов JavaScript.Стек вызовов — это механизм, позволяющий интерпретатору отслеживать свое место в сценарии, вызывающем несколько функций.
Пример:
функция добавить (а, б) {
вернуть а + б;
}
среднее значение функции (а, б) {
вернуть добавить (а, б) / 2;
}
пусть х = среднее (20, 6);
Обработка ошибок "try..catch":try..catch, который позволяет нам "отлавливать" ошибки, состоит из двух основных блоков: try и catch.
пытаться {
// код …
} поймать (ошибиться) {
// обработка ошибок …
}
Во-первых, он выполнил код внутри try {..}. Если ошибок не было, игнорируется catch(err){..}. Если обнаружена ошибка, то выполнение попытки останавливается и выполняется catch(err){…}. Здесь переменная err будет содержать объект ошибки с подробностями о том, что произошло.
Руководства по стилю.Руководство по стилю содержит общие правила написания кода в наилучшем стиле кодирования.
Некоторые популярные варианты:
- Руководство по стилю Google JavaScript
- Руководство по стилю JavaScript для Airbnb
- Идиоматика.JS
- СтандартJS
Комментарии. Комментарии могут быть однострочными: начиная с // и многострочными: /* … */.
Обычно мы используем их, чтобы описать, как и почему работает код.
Плохой комментарий:
// Комментарий из нескольких строк….
// … дополнительные строки комментариев
console.log(3);
Хороший комментарий:
/**
* Прокомментируйте несколько строк…
* Вторая линия
* Больше строк
*/
console.log(3);
Кэширование.Кэширование — это полезная и удивительно сложная функция веб-браузеров. Все браузеры пытаются сохранять локальные копии статических ресурсов, чтобы сократить время загрузки страниц и минимизировать сетевой трафик.
Различные типы кэширования:
- Кэширование клиента
- Кэширование сервера
- Локальное кэширование
- Гибридное кэширование.
Кросс-браузерное тестирование. Это процесс, позволяющий убедиться, что веб-сайт или веб-приложение работают в приемлемом количестве веб-браузеров.
Причина кроссбраузерной проблемы:
- Реализуйте функции по-разному.
- В некоторых браузерах разный уровень поддержки технологий.
Четыре этапа тестирования: Начальное планирование -> Разработка -> Тестирование -> Исправления.
Объявление блочного уровня.В объявлении блочного уровня переменные недоступны из-за пределов заданной области блока.
Блочные области создаются:
- Внутри функции
- Внутри блока (обозначается символами { и })
Параметры по умолчанию: позволяет инициализировать именованные параметры со значениями по умолчанию, если значение не передано или не определено.
функция умножить (х, у = 2) {
вернуть х * у;
}
console.log(умножить (3, 4));
// ожидаемый результат: 12
console.log(умножить(3));
// ожидаемый результат: 6
Функция стрелки: представляет собой компактную альтернативу традиционному функциональному выражению. Но у него есть некоторые ограничения.
- Не следует использовать в качестве метода.
- Не имеет собственных привязок к «этому» или «супер».
- Нельзя использовать в качестве конструкторов.
- Не подходит для «позвонить», «применить» и «связать».