Node.js(三)——模块化
2022/3/20 14:58:41
本文主要是介绍Node.js(三)——模块化,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 什么是模块化
- Node里模块的分类
- module对象
- module.exports对象
- exports和modul.exports误区
node编程中最重要的思想之一就是模块,而正是这个思想,让JavaScript的大规模工程成为可能
什么是模块化
遵守固定的规则 , 把一个大文件拆成独立并互相依赖的多个小模块
- 好处
- 提高了代码的复用性
- 提高了代码的可维护性
- 可以实现按需加载
Node里模块的分类
- 内置模块 (由Node.js官方提供 , 比如fs , path , http)
- 自定义模块(用户创建的每个.js文件都是自定义模块)
- 第三方模块(由第三方开发出来的模块, 使用前需要下载)
- 加载模块 用
require()
方法
const fs = require('fs') const custom = require('./custom.js') //可以省略后面的后缀名 const mement = require('moment')
- 模块作用域
跟函数作用域类似 , 在自定义模块中定义的变量 , 方法等, 只能在当前模块内被访问 , 这种模块级别的访问限制 , 叫模块作用域 , 可以防止全局污染
module对象
定义: 每个.js文件里面都有一个moudle对象 , 它里面存储了和当前模块有关的信息
module.exports对象
在自定义模块中 , 可以使用moudle.exports
对象 , 将模块化的成员共享出去 , 供外界使用
外界使用require()
方法导入自定义模块时 , 得到的就是moudle.exports
所指向的对象
并且导出的对象 , 永远以moudle.exports
指向的对象为准
exports和modul.exports误区
export.username = 'zs' ---------- moudle.exports = { sex : '男', age : 19 } //{sex :'男', age :19}
moudle.exports.uname = 'sd' ----------------------------- exports = { sex : '男', age : 25 } //uname : 'sd'
exports.uname = 'kd' ----------------- moudle.exports.sex = '男' //{uname :'kd', sex :'男'}
exports = { uname: 'df', sex: '男' } moudle.exports = exports moudle.exports.age = 23 //{uname: 'df', sex: '男', age: 23}
为了防止混淆 , 建议不要在同一个模块中同时使用
exports
和moudle.exports
这篇关于Node.js(三)——模块化的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-09vue3开发前端表单缓存自定义指令,移动端h5必备插件
- 2024-05-09React Hooks在class组件中的使用方式
- 2024-03-30[OIDC in Action] 2. 基于OIDC(OpenID Connect)的SSO(纯JS客户端)
- 2024-03-29terraform jsonencode
- 2024-03-13vuex-persist
- 2024-03-11icons for vue
- 2024-03-07breadcrumbs react js
- 2024-03-06react login page example
- 2024-03-06react router uselocation
- 2024-03-04postgres jsonb_set