„JavaScript“ moduliai

Šioje pamokoje su pavyzdžių pagalba sužinosite apie „JavaScript“ modulius.

Didėjant mūsų programai, joje gali būti daug kodo eilučių. Užuot įdėję viską į vieną failą, galite naudoti modulius, kad atskirtumėte kodus atskiruose failuose pagal jų funkcionalumą. Tai padaro mūsų kodą tvarkingesnį ir lengviau prižiūrimą.

Modulis yra failas, kuriame yra kodas konkrečiai užduočiai atlikti. Modulyje gali būti kintamųjų, funkcijų, klasių ir pan. Pažiūrėkime pavyzdį,

Tarkime, faile pavadinimu greet.js yra šis kodas:

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

Dabar, norėdami naudoti greet.js kodą kitame faile, galite naudoti šį kodą:

 // 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

Čia

  • greetPerson()Į funkciją greet.js eksportuojama naudojant exportraktažodį
     export function greetPerson(name) (… )
  • Tada importavome greetPerson()į kitą failą naudodami importraktinį žodį. Norėdami importuoti funkcijas, objektus ir kt., Turite juos apvynioti ( ).
     import ( greet ) from '/.greet.js';

Pastaba : Iš modulio galite pasiekti tik eksportuotas funkcijas, objektus ir pan. Raktinį exportžodį reikia naudoti konkrečiai funkcijai, objektams ir pan., Kad galėtumėte juos importuoti ir naudoti kituose failuose.

Eksportuoti kelis objektus

Taip pat galima eksportuoti kelis objektus iš modulio. Pavyzdžiui,

Faile module.js

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

Pagrindiniame faile

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

Čia

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

Tai importuoja vardo kintamąjį ir sum()funkciją iš failo module.js .

Importo ir eksporto pervadinimas

Jei objektai (kintamieji, funkcijos ir kt.), Kuriuos norite importuoti, jau yra pagrindiniame faile, programa gali elgtis ne taip, kaip norite. Tokiu atveju programa ima vertę iš pagrindinio failo, o ne importuoto failo.

Kad išvengtumėte vardų konfliktų, eksportuodami arba importuodami galite pervardyti šias funkcijas, objektus ir kt.

1. Pervadinti modulyje (eksportuoti 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';

Eksportuojant funkciją iš failo module.js , funkcijai suteikiami nauji vardai (čia newName1 ir newName2). Taigi, importuojant tą funkciją, naujas pavadinimas naudojamas nurodant tą funkciją.

2. Pervardykite importo faile

 // 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';

Importuojant funkciją, funkcijos pavadinimui naudojami nauji vardai (čia, newName1 ir newName2). Dabar naudojate naujus pavadinimus nurodydami šias funkcijas.

Numatytasis eksportavimas

Taip pat galite atlikti numatytąjį modulio eksportavimą. Pavyzdžiui,

Faile greet.js :

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

Tada importuodami galite naudoti:

 import random_name from './greet.js';

Atlikdami numatytąjį eksportavimą,

  • random_name yra importuotas iš greet.js. Kadangi random_namenėra greet.js, numatytasis eksportas ( greet()šiuo atveju) eksportuojamas kaip random_name.
  • Galite tiesiogiai naudoti numatytąjį eksportavimą, nepridedant garbanotų skliaustų ().

Pastaba : faile gali būti keli eksportai. Tačiau faile galite turėti tik vieną numatytąjį eksportavimą.

Moduliai visada naudoja griežtą režimą

Pagal numatytuosius nustatymus moduliai veikia griežtu režimu. Pavyzdžiui,

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

Modulio naudojimo nauda

  • Kodo bazę lengviau prižiūrėti, nes skirtinguose failuose yra skirtingi įvairias funkcijas turintys kodai.
  • Padaro kodą daugkartinį. Galite apibrėžti modulį ir jį naudoti daugybę kartų pagal savo poreikius.

Kai kuriose naršyklėse importo / eksporto naudojimas gali būti nepalaikomas. Norėdami sužinoti daugiau, apsilankykite „JavaScript“ importavimo / eksportavimo palaikymo tarnyboje.

Įdomios straipsniai...