前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Node模块化

Node模块化

作者头像
张苹果
发布于 2022-10-04 12:30:30
发布于 2022-10-04 12:30:30
30200
代码可运行
举报
文章被收录于专栏:vaevae
运行总次数:0
代码可运行

一,创建一个自定义模块 a.js,使用module.exports暴露出去。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
console.log('这是用户自定义模块a')
const name='张三'
function show(){
 console.log('显示'+name)
}
//向module.exports对象上挂载属性,暴露出去
module.exports={name,show}

二,加载上面的自定义模块。得到 module.exports 对象。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//1,加载用户自定义模块,可以省略.js后缀名。
const a=require('./a.js')
//得到 module.exports 对象
console.log(a) //{ name: '张三', show: [Function: show] }
console.log(a.show())

演示module对象。

  1. 每个.js自定义模块中都有一个module对象,它里面存储了当前模块有关的信息。
  2. module.exports和exports是同一个对象。
  3. 最终都是module.exports指向的对象。
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//每个.js自定义模块中都有一个module对象,它里面存储了当前模块有关的信息。
console.log(module)
// module.exports和exports是同一个对象
//最终都是module.exports指向的对象
console.log(module.exports)
console.log(exports)
console.log(module.exports==exports) //true
/**
 *    打印如下:
 *          Module {
                  id: '.',
                  path: 'E:\\node.js教学\\6,模块化',
                  exports: {},
                  parent: null,
                  filename: 'E:\\node.js教学\\6,模块化\\2,演示module对象.js',
                  loaded: false,
                  children: [],
                  paths: [
                    'E:\\node.js教学\\6,模块化\\node_modules',
                    'E:\\node.js教学\\node_modules',
                    'E:\\node_modules'
                  ]
                }
            module.exports 对象,可以将模块内的成员共享出去,供外界使用。
            外界用require()方法导入自定义模块时,得到的就说module。exports所指的对象
 * */

module和module.exports的使用误区。

  1. 时刻谨记:require() 模块时,得到的永远时module.exposts指向的对象。
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//时刻谨记,require() 模块时,得到的永远时module.exposts指向的对象
    案例一 
            exports.user='张三'
 module.exports={name:'李四' }
            结果  {name:'李四'}
    实例二
 module.exports.user='张三'
            exports={name:'李四'}
            结果  {user:'李四'}
    实例三
            exports.username='zs'
 module.exports.gender='男'
            结果:{username:'zs',gender:'男'}
    实例四
            exports={ name:'zs',gender:'男'}
 module.exports=exports;
 module.exports.age=18;
            结果:{name:'zs',gender:'男' age:18}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022/09/30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
前端模块化-总结_前端模块化规范
先说说什么是模块化,就是将独立的功能代码封装成一个独立的文件,其他模块需要使用,在进行引用。
全栈程序员站长
2022/11/17
6670
前端模块化-总结_前端模块化规范
模块化-模块化规范
新建一个COMMONJS文件夹,然后 npm init初始化packe.json(只需要回车就可以)。 modules用于存放所有子模块。modules的同级创建一个app.js它去使用其他子模块。
用户4793865
2023/01/12
6210
【Node.js】模块化学习
                 exports和module.exports的适用误区
坚毅的小解同志的前端社区
2022/11/28
1.9K0
【Node.js】模块化学习
前端模块化
A 引入 a.js,B 引入 b.js,这些代码最后都是存在于全局作用域里,难保不会出现变量命名冲突的问题。
Chor
2019/11/07
7430
前端工程\模块化
无论是前端、后端、甚至非编程领域都有模块化的概念,只是不同的领域叫法不同,不过,新技术的产生一定是有原因的:
Java_慈祥
2024/08/01
1520
前端工程\模块化
Node.js模块化开发
一个功能就是一个模块, 多个模块可以组成完整应用,抽离一个模块不会影响其他功能的运行。
清出于兰
2020/10/26
1.8K0
Node.js模块化开发
node.js - 基础之module
为了让node.js的文件可以相互调用,node.js提供了一个简单的模块系统。模块是node.js应用程序基本的组成部分,文件和模块是一一对应的。换言之,一个node.js文件就是一个模块,这个文件可能是javascript代码、json或者编译过的c/c++扩展。
conanma
2022/01/05
9990
what is 模块化?
将一个复杂的程序按照一定的规范,封装成几个块(文件),并进行组合在一起。 这些模块,最好都做到可复用性,比如可以在多个文件中使用处理时间的模块。
用户4793865
2023/01/12
1.2K0
what is 模块化?
模块化的一些小研究
我们知道最常见的模块化方案有CommonJS、AMD、CMD、ES6,AMD规范一般用于浏览器,异步的,因为模块加载是异步的,js解释是同步的,所以有时候导致依赖还没加载完毕,同步的代码运行结束;CommonJS规范一般用于服务端,同步的,因为在服务器端所有文件都存储在本地的硬盘上,传输速率快而且稳定。
lhyt
2022/09/21
3320
Node 导入模块:require()和导出模块:module.exports、exports的用法及注意点
注意:require()导入模块时,得到的永远是module.exports指向的对象
倾盖
2022/08/16
1.3K0
浅谈 Node.js 模块机制及常见面试问题解答
Node.js 模块机制采用了 Commonjs 规范,弥补了当前 JavaScript 开发大型应用没有标准的缺陷,类似于 Java 中的类文件,Python 中的 import 机制,Node.js 中可以通过 module.exports、require 来导出和引入一个模块.
五月君
2019/08/29
1.5K0
浅谈 Node.js 模块机制及常见面试问题解答
模块化的一些小研究0.前言1.script标签引入2.AMD与CMD3.CommonJS与ES64.循环依赖5.webpack是如何处理模块化的
我们知道最常见的模块化方案有CommonJS、AMD、CMD、ES6,AMD规范一般用于浏览器,异步的,因为模块加载是异步的,js解释是同步的,所以有时候导致依赖还没加载完毕,同步的代码运行结束;CommonJS规范一般用于服务端,同步的,因为在服务器端所有文件都存储在本地的硬盘上,传输速率快而且稳定。
lhyt
2018/10/31
1.3K0
简单的复习下前端模块化相关的知识
作为前端开发,模块化我们已经耳熟能详,我们平时接触到的 ES6 的 import,nodejs中的require他们有啥区别?
前端达人
2022/04/18
4350
NodeJS学习二CommonJS规范
Node程序由许多个模块组成,每个模块就是一个文件。Node模块采用了CommonJS规范。
空空云
2018/09/27
6100
Node.js学习笔记(二)——Node.js模块化、文件读写、环境变量
(1)、在浏览器端使用var或不使用关键字定义的变量属于全局作用域,也就是可以使用window对象访问。
张果
2022/09/28
6.4K0
Node.js学习笔记(二)——Node.js模块化、文件读写、环境变量
深入Node.js的模块加载机制,手写require函数
模块是Node.js里面一个很基本也很重要的概念,各种原生类库是通过模块提供的,第三方库也是通过模块进行管理和引用的。本文会从基本的模块原理出发,到最后我们会利用这个原理,自己实现一个简单的模块加载机制,即自己实现一个require。
蒋鹏飞
2020/10/15
1.2K0
webpack模块化的原理
在webpack中既可以书写commonjs模块也可以书写es模块,而且不用考虑浏览器的兼容性问题,我们来分析一下原理。
gogo2027
2022/10/31
5330
JavaScript模块化发展
简介 在最开始学习前端的时候只需要一个js文件就能玩转一个小的练手应用,但是随着自己不断的学习,ajax、jQuery等广泛应用,使得我们的代码量变得巨大,代码变得格外的混乱。现在迫切的需要我们将大段的代码分离开来。 前端最开始并没有像java中package概念以及import那样的引包工具。JavaScript源生代码是在ES6的时候才正式的引入import这个API,来调用其他文件。在这之前也同样出现了很多社区来实现模块化开发。 ---- 发展历程 注意下面会讲历史上面出现的一些类库,有一些现在已经没
pitaojin
2018/05/25
1.7K0
【THE LAST TIME】深入浅出 JavaScript 模块化
随着互联网的发展,前端开发也变的越来越复杂,从一开始的表单验证到现在动不动上千上万行代码的项目开发,团队协作就是我们不可避免的工作方式,为了更好地管理功能逻辑,模块化的概念也就渐渐产生了。
Nealyang
2020/01/14
7100
【THE LAST TIME】深入浅出 JavaScript 模块化
【Nodejs】838- Nodejs 模块化你所需要知道的事
我们知道,Node.js是基于CommonJS规范进行模块化管理的,模块化是面对复杂的业务场景不可或缺的工具,或许你经常使用它,但却从没有系统的了解过,所以今天我们来聊一聊Node.js模块化你所需要知道的一些事儿,一探Node.js模块化的面貌。
pingan8787
2021/01/28
5820
【Nodejs】838- Nodejs 模块化你所需要知道的事
推荐阅读
相关推荐
前端模块化-总结_前端模块化规范
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验