Каталог
Веб-разработка с нуля: четыре курса по порядку.
HTML, затем CSS, JavaScript и SQL. Каждый курс говорит, что нужно знать до него и что вы будете уметь после.
Загружаем курсы…
Каталог
HTML, затем CSS, JavaScript и SQL. Каждый курс говорит, что нужно знать до него и что вы будете уметь после.
Загружаем курсы…
Урок 55 из 114 · 9 мин
import и export, script type=module, defer, отладка через debugger и точки остановки.
Файл app.js такой длинный, что я в нём теряюсь.
Код делят на модули: данные отдельно, отрисовка отдельно. А когда что-то сломалось, вместо десятка console.log ставят точку остановки.
exportexport function total() {} — функцию можно импортировать в другом файле.importimport { total } from "./cart.js"; — подключить экспорт другого файла.<script type="module" src="app.js"> — в модулях работают import/export, свои переменные не попадают в глобальную область, и скрипт ждёт загрузки страницы.<script src="app.js" defer> — скрипт загружается параллельно и выполняется, когда HTML разобран.<head> без торможения страницы.debuggerdebugger; останавливает код при открытых DevTools: можно посмотреть все переменные и идти по шагам.Один модуль — одна тема. Если файл не помещается на экран, подумай, что вынести.
Перед тем как вынести в модуль, сделай функции чистыми: addItem(cart, item) возвращает НОВЫЙ массив, не меняя cart, а cartTotal(cart) считает сумму price.
Выберите один ответ.
Попадают ли переменные модуля в глобальную область?
Выберите один ответ.
Что делает строка debugger; при открытых DevTools?
Проверяем состояние обучения…