ES Modules
ES Modules․ import և export modern JavaScript-ում
ES Modules կամ ESM (ECMAScript Modules) հանդիսանում է JavaScript-ի ստանդարտ մոդուլային համակարգը, որը պաշտոնապես ներկայացվեց ECMAScript 2015 (ES6) տարբերակում։ Այն թույլ է տալիս կազմակերպել կոդը ավելի մաքուր և արդյունավետ ձևով, թե՛ բրաուզերում, թե՛ սերվերային միջավայրերում (օրինակ՝ Node.js-ում):
ES Modules-ը աշխատում է ասինխրոն կերպով և օգտագործում է import
և export
հիմնաբառերը մոդուլների ներմուծման և արտահանումի համար։
Կան երկու հիմնական եղանակ՝ արտահանել արժեքներ ES Modules-ում՝ named export և default export։
// greet.js ֆայլ
export function greet(name) {
return `Բարև, ${name}!`;
}
export const message = 'Բարի գալուստ մեր կայք։';
// greet.js ֆայլ
export default function greet(name) {
return `Բարև, ${name}!`;
}
Default export-ով կարելի է արտահանել մեկ հիմնական արժեք ֆայլից։
Ներմուծումը նույնպես կատարվում է ըստ արտահանման ձևի՝
// main.js ֆայլ
import { greet, message } from './greet.js';
console.log(greet('Անի')); // Բարև, Անի!
console.log(message); // Բարի գալուստ մեր կայք։
// main.js ֆայլ
import greet from './greet.js';
console.log(greet('Անի')); // Բարև, Անի!
// greet.js ֆայլում
export default function greet(name) {
return `Բարև, ${name}!`;
}
export const message = 'Բարի գալուստ մեր կայք։';
// main.js ֆայլում
import greet, { message } from './greet.js';
console.log(greet('Անի')); // Բարև, Անի!
console.log(message); // Բարի գալուստ մեր կայք։
Եթե ուզում ես ES Modules օգտագործել ուղղակիորեն բրաուզերում, պետք է նշես type="module"
<script>
թեգի մեջ․
<script type="module" src="main.js"></script>
Բրաուզերն իմանում է, որ սա մոդուլային ֆայլ է և համապատասխան կերպով բեռնում է այն։
require()
և module.exports
։import
և export
։ES Modules-ը դարձել է JavaScript-ի ստանդարտ տարբերակն այսօր՝ հնարավորություն տալով գրել մաքուր, արագ և արդյունավետ կոդ։ Հաջորդ հոդվածում կխոսենք, թե ինչպես են CommonJS-ը և ES Modules-ը համատեղվում Node.js-ում և ինչ խնդիրների կարող ես հանդիպել դրանք օգտագործելիս։