nodejs使用的CommonJS规范

本文详细介绍了Node.js中的模块系统,包括如何通过require()方法引入模块、如何使用exports和module.exports导出变量及函数等内容,并解释了核心模块与自定义模块的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

模块的引用

let 变量= require('模块的标识') 
eg: let obj = require('./node')

模块的定义

在node中一个js文件就是一个模块
默认情况下在js文件中编写的内容 都是运行在一个独立的函数中,外部的模块无法访问

导出变量和函数

  • 使用 exports
exports.属性 = 属性值;
exports.方法 = 函数;

注意:exports不能直接赋值为一个对象,这样原有的指向module.exports会被更改
在这里插入图片描述

module.exports.属性 = 属性值;
module.exports.方法 = 函数;
module.exports = {};

模块的标识

模块的标识就是模块的名字或路径,node通过模块的标识来寻找模块的
对于核心模块(npm中下载的模块),直接使用模块的名字对其进行引入

var fs = require("fs");
var express = require("express");

于自定义的文件模块,需要通过文件的路径来对模块进行引入,路径可以是绝对路径,如果是相对路径必须以./或 …/开头(不能省略)

var m = require("./module1");

在这里插入图片描述

exports 是mobule.exports的引用,文件中才有exports, 交互模式下是没有exports

在js 文件中,this 指向这个模块导出的这个对象module.exports

在交互模式中,this 指向这个模块导出的这个对象global

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值