Node.js:n moduulijärjestelmä
Tutustutte CommonJS-moduuleihin ja ES-moduuleihin sekä toiminnallisuuden tuontiin ja vientiin tiedostojen välillä Node.js:ssä.
Node.js:n moduulijärjestelmä on ilmainen Node.js-taustakehityksen bootcamp-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Node.js-taustakehityksen bootcamp-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Node.js-taustakehityksen bootcamp-kurssilla on yhteensä 4 oppituntia.
Koodin järjestäminen moduuleilla
Kun sovellukset kasvavat, yhdestä valtavasta tiedostosta tulee sekava. Moduulit jakavat koodin pieniin, uudelleenkäytettäviin ja tarkoituksenmukaisiin osiin. Node tukee kahta järjestelmää: CommonJS:ää ja ES Modulesia.
CommonJS: `require()` ja `module.exports`
CommonJS on Noden alkuperäinen moduulijärjestelmä: require() tuo koodia sisään ja module.exports vie koodia ulos. Tuo tarvitsemasi ja vie tarjoamasi.
CommonJS: funktion vieminen
Tässä on mathUtils.js. Kaikki, mitä sijoitat module.exports-muuttujaan, voidaan tuoda muista tiedostoista — tässä tapauksessa vain add-funktio.
const add = (a, b) => a + b;
const subtract = (a, b) => a - b;
module.exports = add; // Only 'add' is exportedCommonJS: tuominen ja käyttäminen
Toisessa tiedostossa require('./mathUtils.js') tuo kyseisen viedyn funktion. Pidä molemmat tiedostot samassa kansiossa ja suorita node app.js.
const addFunction = require('./mathUtils.js');
console.log("Using the imported function:");
console.log(`5 + 3 = ${addFunction(5, 3)}`);
console.log(`10 + 2 = ${addFunction(10, 2)}`);CommonJS: useiden kohteiden vieminen
Tarvitseeko viedä useita asioita? Sijoita module.exports-muuttujaan objekti, joka sisältää ne kaikki — tämä on selkeä tapa ryhmitellä toisiinsa liittyvät apufunktiot.
const greet = (name) => `Hello, ${name}!`;
const farewell = (name) => `Goodbye, ${name}!`;
module.exports = {
greetUser: greet,
sayGoodbye: farewell
};CommonJS: useiden kohteiden tuominen
Kun moduuli vie objektin, poimi sen osat hajautusmäärityksellä: const { greetUser, sayGoodbye } = require(...). Tämä on selkeämpää kuin ominaisuuksien käyttö pisteellä.
const { greetUser, sayGoodbye } = require('./utils.js');
console.log(greetUser('Alice'));
console.log(sayGoodbye('Bob'));ES Modules: nykyaikainen standardi
ES Modules (ESM) on JavaScriptin virallinen standardi, joka käyttää import- ja export-lauseita. Ne mahdollistavat tree-shakingin — määritä "type": "module" tai käytä .mjs-tiedostopäätettä ottaaksesi ne käyttöön.
ESM: nimetyt viennit ja tuonnit
Nimetyissä vienneissä viet arvot nimien perusteella ja tuot ne vastaavien { }-aaltosulkeiden sisällä — näin näet selvästi, mitä osia tarkalleen käytät.
export const add = (a, b) => a + b;
export const multiply = (a, b) => a * b;
// app.mjs (main entry point)
// To run this: ensure package.json has "type": "module"
// and run with `node app.mjs`
import { add, multiply } from './calculator.mjs';
console.log(`2 + 4 = ${add(2, 4)}`);
console.log(`5 * 6 = ${multiply(5, 6)}`);ESM: oletusviennit
Moduulilla voi olla yksi oletusvienti, joka on yleensä sen pääominaisuus. Voit tuoda sen haluamallasi nimellä ilman aaltosulkeita.
const logMessage = (msg) => console.log(`[LOG] ${msg}`);
export default logMessage;
// main.mjs (main entry point)
// To run this: ensure package.json has "type": "module"
// and run with `node main.mjs`
import myLogger from './logger.mjs';
myLogger('This is a default message.');
myLogger('Another important event.');Pikatesti: moduulijärjestelmät
Olet oppinut CommonJS:stä ja ES Modulesista. Testataan ymmärryksesi!
Kertaus: Node.js-moduulit
Olet tutustunut Node-moduuleihin: CommonJS (require/module.exports, perinteinen järjestelmä) ja ESM (import/export, nykyaikainen standardi). Molemmat auttavat pitämään sovellukset järjestyksessä.
Opi JavaScript tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 22
- Oppitunnit
- 92
Usein kysytyt kysymykset
Onko oppitunti ”Node.js:n moduulijärjestelmä” ilmainen?
Kyllä – oppitunnin ”Node.js:n moduulijärjestelmä” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Node.js-taustakehityksen bootcamp-kurssin, päivitä CoddyKit PROhon. Node.js-taustakehityksen bootcamp-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Node.js:n moduulijärjestelmä”?
Tutustutte CommonJS-moduuleihin ja ES-moduuleihin sekä toiminnallisuuden tuontiin ja vientiin tiedostojen välillä Node.js:ssä. Harjoittelet Node.js-taustakehityksen bootcamp-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Node.js-taustakehityksen bootcamp-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Node.js-taustakehityksen bootcamp-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.
Kuinka kauan ”Node.js:n moduulijärjestelmä”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Node.js-taustakehityksen bootcamp-oppitunnilla?
Kyllä. Jokainen Node.js-taustakehityksen bootcamp-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Node.js:n ja NPM:n perusteet
- Node.js:n moduulijärjestelmä
- Asynkroninen JavaScript ja tapahtumasilmukka
- Tiedostojärjestelmän ja streamien käsittely