Преобразуване на CommonJS модули в ES в JavaScript

Все още в различни документации може да срещнете импорти в стила на CommonJS модули. Трябва да се научите да преобразувате тези импорти в стандартни ES модули.

В CommonJS импортирането се извършва с помощта на командата require, на която като параметър се посочва пътят към модула. Резултатът от командата се записва в променлива:

src/index.jslet math = require('./math');

Нека пренапишем този код в стил ES. Първо, обърнете внимание на това, че в CommonJS не се поставя разширение .js за файлове, а в ES - се поставя.

След това всичко зависи от това дали от модула се експортира по подразбиране или обикновено. В CommonJS няма разлика, а в ES модулите - има. По правило, разликата се вижда от примерите с код, или може просто да опитате и двата варианта за импортиране.

В нашия случай посоченият импорт ще се пренапише или в този вид:

src/index.jsimport math from './math.js';

Или в този вид:

src/index.jsimport * as math from './math.js';
Задание 1

Пренапишете следния код в стил ES модули:

src/index.jslet {square, cube} = require('./math');
Задание 2

Пренапишете следния код в стил ES модули:

src/index.jslet math = require('./math');
let res  = math.square(2) + math.cube(3);
Задание 3

Пренапишете следния код в стил ES модули:

src/index.jslet sum = require('./sum');
let res = sum([1, 2, 3]);