Создание ES модуля
Каждый модуль должен представлять собой отдельный файл. Переменные и функции, которые мы разместим в этом файле, не будут доступны снаружи файла. В этом преимущество модулей - мы можем создавать любые переменные и функции, не боясь конфликта с именами из других библиотек.
Те переменные и функции, которые мы хотим сделать видимыми снаружи, мы должны экспортировать с помощью команды export
.
Давайте попробуем на примере. Сделаем модуль math
, который будет предоставлять библиотеку функций для математических операций. Разместим наш модуль в файле math.js
и сделаем в нем несколько функций:
Пусть функции для извлечения корней будут основными и будут экспортироваться наружу, а функция для округления - вспомогательной и не будет экспортироваться. Давайте напишем нужным функциям команду export
:
/src/math.jsexport function root2(num) {
return round(num ** (1 / 2));
}
export function root3(num) {
return round(num ** (1 / 3));
}
function round(num) {
return num.toFixed(2);
}