JavaScripti moodulid

Selles õpetuses saate näidete abil õppida JavaScripti mooduleid.

Kui meie programm kasvab, võib see sisaldada palju koodiridu. Selle asemel, et panna kõik ühte faili, saate moodulite abil eraldada koodid eraldi failides vastavalt nende funktsionaalsusele. See muudab meie koodi korrastatud ja hõlpsamini hooldatavaks.

Moodul on fail, mis sisaldab koodi konkreetse ülesande täitmiseks. Moodul võib sisaldada muutujaid, funktsioone, klasse jne. Vaatame näidet,

Oletame, et fail nimega greet.js sisaldab järgmist koodi:

 // exporting a function export function greetPerson(name) ( return `Hello $(name)`; )

Nüüd, et kasutada faili greet.js koodi teises failis, võite kasutada järgmist koodi:

 // importing greetPerson from greet.js file import ( greetPerson ) from './greet.js'; // using greetPerson() defined in greet.js let displayName = greetPerson('Jack'); console.log(displayName); // Hello Jack

Siin,

  • Greet.js-s olev greetPerson()funktsioon eksporditakse märksõna abilexport
     export function greetPerson(name) (… )
  • Seejärel importisime märksõna greetPerson()abil teise faili import. Funktsioonide, objektide jms importimiseks peate need ümbritsema ( ).
     import ( greet ) from '/.greet.js';

Märkus . Moodulist pääseb juurde ainult eksporditud funktsioonidele, objektidele jms. exportMärksõna peate kasutama konkreetse funktsiooni, objektide jms jaoks nende importimiseks ja kasutamiseks teistes failides.

Ekspordi mitu objekti

Moodulist on võimalik eksportida ka mitu objekti. Näiteks,

Failis module.js

 // exporting the variable export const name = 'JavaScript Program'; // exporting the function export function sum(x, y) ( return x + y; )

Põhifailis

 import ( name, sum ) from './module.js'; console.log(name); let add = sum(4, 9); console.log(add); // 13

Siin,

 import ( name, sum ) from './module.js';

See impordib failist module.js nii nimemuutuja kui ka sum()funktsiooni .

Impordi ja ekspordi ümbernimetamine

Kui imporditavad objektid (muutujad, funktsioonid jne) on teie põhifailis juba olemas, ei pruugi programm käituda nii, nagu soovite. Sellisel juhul võtab programm imporditud faili asemel väärtuse põhifailist.

Nimetuskonfliktide vältimiseks võite need funktsioonid, objektid jne eksportimise või importimise ajal ümber nimetada.

1. Nimeta moodulis ümber (ekspordi fail)

 // renaming import inside module.js export ( function1 as newName1, function2 as newName2 ); // when you want to use the module // import in the main file import ( newName1, newName2 ) from './module.js';

Funktsiooni failist module.js eksportides antakse funktsioonile uued nimed (siin newName1 & newName2). Seega kasutatakse selle funktsiooni importimisel funktsiooni viitamiseks uut nime.

2. Nimetage impordifailis ümber

 // inside module.js export ( function1, function2 ); // when you want to use the module // import in the required file with different name import ( function1 as newName1, function2 as newName2 ) from './module.js';

Siin kasutatakse funktsiooni importimisel funktsiooni nime jaoks uusi nimesid (siin, uusNimi1 ja uusNimi2). Nüüd kasutate nendele funktsioonidele viitamiseks uusi nimesid.

Vaikimisi eksport

Samuti saate mooduli eksportida vaikimisi. Näiteks,

Failis greet.js :

 // default export export default function greet(name) ( return `Hello $(name)`; ) export const age = 23;

Siis saate importimisel kasutada järgmist:

 import random_name from './greet.js';

Vaikimisi eksportimise ajal

  • juhuslik_nimi imporditakse greet.js. Kuna, random_namepole greet.js, eksporditakse vaikeksport ( greet()antud juhul) kujul random_name.
  • Saate otse kasutada vaikeksportimist ilma lokkisulgudeta ().

Märkus . Fail võib sisaldada mitut eksporti. Siiski saab failis olla ainult üks vaikeksport.

Moodulid kasutavad alati ranget režiimi

Vaikimisi on moodulid ranges režiimis. Näiteks,

 // in greet.js function greet() ( // strict by default ) export greet();

Mooduli kasutamise eelis

  • Koodibaasi on lihtsam hooldada, kuna erinevates funktsioonides on erinevad koodid, millel on erinevad funktsioonid.
  • Muudab koodi korduvkasutatavaks. Mooduli saate määratleda ja kasutada mitu korda vastavalt oma vajadustele.

Mõnes brauseris ei pruugi impordi / ekspordi kasutamist toetada. Lisateabe saamiseks külastage JavaScripti impordi / ekspordi tugiteenust.

Huvitavad Artiklid...