Rumah >hujung hadapan web >tutorial js >Memahami modul.exports dan eksport dalam node.js

Memahami modul.exports dan eksport dalam node.js

William Shakespeare
William Shakespeareasal
2025-02-09 08:53:11879semak imbas

Understanding module.exports and exports in Node.js

Modul Node.js adalah unit kod mandiri, mempromosikan kebolehgunaan semula dan memudahkan pembangunan aplikasi. Artikel ini meneroka penciptaan modul, eksport, dan import menggunakan format Commonjs, standard Node.js.

Konsep Utama:

  • Pembangunan modular dalam node.js: modul adalah penting untuk membina aplikasi Node.js yang cekap, boleh diguna semula, dan boleh diguna semula.
  • Format Modul Commonjs: Artikel ini memberi tumpuan kepada format Commonjs ( dan ), lazim dalam Node.js dan ekosistem NPM. Format lain (AMD, ESM, System.Register, UMD) wujud tetapi tidak dilindungi di sini. require module.exports
  • Mengeksport dan mengimport modul:
  • Arahan terperinci disediakan untuk mewujudkan, mengeksport, dan menggunakan modul. Ini termasuk mengeksport pelbagai nilai, menggunakan untuk eksport lalai, dan memahami nuansa berbanding module.exports. module.exports exports Format Modul Node.js Node.js (gambaran ringkas):

Walaupun pelbagai format modul wujud di JavaScript, panduan ini menumpukan pada Commonjs, standard untuk Node.js. Format lain termasuk: AMD (Definisi Modul Asynchronous), ESM (Modul ES), System.Register, dan UMD (Definisi Modul Universal).

Menggunakan modul terbina dalam:

Node.js menawarkan modul terbina dalam yang boleh diakses melalui kata kunci . Sebagai contoh, Modul Sistem Fail () menyediakan fungsi seperti

untuk penyenaraian kandungan direktori:

require fs Modul CommonJS memuat serentak, diproses dalam urutan penampilan mereka. readdir

<code class="language-javascript">const fs = require('fs');
const folderPath = '/home/jim/Desktop/';

fs.readdir(folderPath, (err, files) => {
  files.forEach(file => {
    console.log(file);
  });
});</code>
Membuat dan Mengeksport Modul:

mari kita buat modul :

Kemudian, importnya ke user.js:

<code class="language-javascript">const getName = () => 'Jim';
exports.getName = getName;</code>

Running index.js output "Pengguna: Jim". Objek

membuat
<code class="language-javascript">const user = require('./user');
console.log(`User: ${user.getName()}`);</code>
tersedia untuk import. Prefix

dalam node index.js menunjukkan fail tempatan; Pelanjutan fail ditinggalkan. exports getName ./ Mengeksport Pelbagai Item: require

pelbagai kaedah dan nilai boleh dieksport:

Import dan gunakannya dalam

seperti yang diperlukan. Ambil perhatian bahawa nama yang dieksport (

di sini) boleh berbeza dari nama pembolehubah asal.
<code class="language-javascript">const getName = () => 'Jim';
const getLocation = () => 'Munich';
const dateOfBirth = '12.01.1982';

exports.getName = getName;
exports.getLocation = getLocation;
exports.dob = dateOfBirth;</code>

index.js Syntax Eksport Alternatif: dob

Eksport boleh ditakrifkan dalam talian:

Memusnahkan import:

<code class="language-javascript">exports.getName = () => 'Jim';
exports.getLocation = () => 'Munich';
exports.dob = '12.01.1982';</code>

Destructuring membolehkan import terpilih:

Eksport lalai menggunakan

:
<code class="language-javascript">const { getName, dob } = require('./user');
console.log(`${getName()} was born on ${dob}.`);</code>

untuk modul yang mengeksport entiti tunggal, module.exports lebih disukai:

<code class="language-javascript">const fs = require('fs');
const folderPath = '/home/jim/Desktop/';

fs.readdir(folderPath, (err, files) => {
  files.forEach(file => {
    console.log(file);
  });
});</code>
3

pada mulanya merujuk kepada module.exports. Walau bagaimanapun, secara langsung menugaskan semula exports menggantikan keseluruhan objek eksport. Amalan terbaik untuk menggunakan secara konsisten untuk mengelakkan tingkah laku yang tidak dijangka.

exports Kesimpulan: module.exports module.exports Modul module.exports adalah asas kepada pembangunan node.js yang berkesan. Artikel ini menyediakan asas yang kukuh untuk memahami dan menggunakannya dengan cekap. Untuk butiran lanjut, rujuk sumber yang disediakan.

FAQs:

Seksyen Soalan Lazim yang disediakan sudah berstruktur dan bermaklumat. Tiada perubahan yang diperlukan.

Atas ialah kandungan terperinci Memahami modul.exports dan eksport dalam node.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn