Μετατροπή CommonJS modules σε ES modules στο JavaScript

Ακόμα και σήμερα, σε διάφορες τεκμηριώσεις μπορεί να συναντήσετε εισαγωγές στο στυλ των CommonJS modules. Πρέπει να μάθετε πώς να μετατρέπετε αυτές τις εισαγωγές σε τυπικά ES modules.

Στο CommonJS, οι εισαγωγές γίνονται με την εντολή require, της οποίας η παράμετρος καθορίζει τη διαδρομή προς το module. Το αποτέλεσμα της εντολής καταγράφεται σε μια μεταβλητή:

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

Ας ξαναγράψουμε αυτόν τον κώδικα στο στυλ των ES modules. Πρώτα, προσέξτε ότι στο CommonJS δεν βάζουμε την επέκταση .js για τα αρχεία, ενώ στα ES modules - βάζουμε.

Στη συνέχεια, όλα εξαρτώνται από το αν από το module γίνεται export by default ή κανονικό export. Στο CommonJS δεν υπάρχει διαφορά, ενώ στα ES modules - υπάρχει. Κατά κανόνα, η διαφορά είναι ορατή στα παραδείγματα κώδικα, ή απλά μπορείτε να δοκιμάσετε και τις δύο επιλογές εισαγωγής.

Στη περίπτωσή μας, η παραπάνω εισαγωγή θα ξαναγραφτεither σε αυτήν τη μορφή:

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

Ή σε αυτήν εδώ τη μορφή:

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

Ξαναγράψτε τον ακόλουθο κώδικα στο στυλ των ES modules:

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

Ξαναγράψτε τον ακόλουθο κώδικα στο στυλ των ES modules:

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

Ξαναγράψτε τον ακόλουθο κώδικα στο στυλ των ES modules:

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