关于node.js模块化入门
2021/10/7 20:42:53
本文主要是介绍关于node.js模块化入门,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
什么是模块化?
将一个大且复杂的程序,分成若干个小块进行组合。模块化后是可以进行组合,分解和可替换的。
举个例子:听说航母的大致结构就是使用模块化建造的,由于航母的体型巨大,使用模块化有利于建造,且部分受到攻击时,对整个航母没有太大的威胁,可以换掉受损的部分,利于维修。
编程领域的模块化
模块化的优点:
1.按需加载 |
2.高复用性 |
3.高维护性 |
模块化的规范
模块化的规范就是对代码拆分,组合时所要遵守的规范。
例如:● 如何引用模块
● 在模块中如何向外暴露成员
node.js模块化的三大类
1.内置模块(由node.js官方提供)
2.自定义模块(由用户创建的js文件)
3.第三方模块(由第三方开发的)
node.js加载模块require()方法
使用require()方法,可以加载需要的内置模块,自定义模块,第三方模块。
const fs = require('fs') //内置模块 const custom = require('./custom.js') //自定义模块 const moment = require('moment') //第三方模块
注意:使用require()方法加载其他模块时,会执行被加载模块中的代码。
什么是模块的作用域
在自定义模块中定义的变量,方法等都只能在当前模块内部被访问,这种模块访问的限制就是模块的作用域。
模块作用域的好处是,防止全局变量被污染
module对象
在js每个自定义模块中都有一个module对象。
module.exports对象
使用module.exports对象,可以把模块内的成员共享出去,给外界使用。
外界使用require()方法导入自定义模块时,得到的就是module.exports所指的对象。
❉ 使用require()方法导入模块时,导入的结果,永远是module.exports指向的对象
exports对象
exports是module.exports的简写,默认情况下exports和module.exports指向同一个对象。最终结果还是已module.exports为准。
注意:为了防止混乱,建议不要在同一个模块中使用module.exports和exports.
node.js模块化规范
CommonJS规定:1.每个模块内部,module变量代表当前模块
2.module变量是一个对象,它的exports属性是对外接口
3.加载某个模块,其实是加载模块的module.exports属性。require()方法用于加载模块
什么是包和npm的使用
包就是第三方模块。
使用npm包管理工具
使用npm格式化时间
const moment = reqire('moment') //导入moment包 const dt = moment().format('YYYY-MM-DD HH:mm:ss') //格式化时间 console.log(dt) //输出2021-10-6 21:39:39
包的版本
第一位数 | 大版本 |
第二位数 | 功能版本 |
第三位数 | BUG修复版本 |
版本号提升的规则:只要前面的版本号增长了,则后面的版本号归零。
创建package.json
创建package.json的配置文件,可以记录项目中安装了那些包。有一个dependencies节点,用来记录你使用npm install命令安装了那些包
一次性安装所有包
运行npm install命令可以一次性安装所有依赖包
卸载包
运行npm uninstall命令,来卸载指定的包
使用淘宝NPM镜像服务器可以解决下载包慢的问题
这篇关于关于node.js模块化入门的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-21Vue3教程:新手入门到实践应用
- 2024-12-21VueRouter4教程:从入门到实践
- 2024-12-20Vue3项目实战:从入门到上手
- 2024-12-20Vue3项目实战:新手入门教程
- 2024-12-20VueRouter4项目实战:新手入门教程
- 2024-12-20如何实现JDBC和jsp的关系?-icode9专业技术文章分享
- 2024-12-20Vue项目中实现TagsView标签栏导航的简单教程
- 2024-12-20Vue3入门教程:从零开始搭建你的第一个Vue3项目
- 2024-12-20从零开始学习vueRouter4:基础教程
- 2024-12-20Vuex4课程:新手入门到上手实战全攻略