企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持知识库和私有化部署方案 广告
# 1.1 JavaScript开发弊端 JavaScript在使用时存在两大问题,**文件依赖**和**命名冲突**。 ![](https://img.kancloud.cn/69/d1/69d163a94792fea581477b73c3b87e93_858x364.png) # 1.2生活中的模块化开发 ![](https://img.kancloud.cn/f4/8a/f48a4509ebc5bf2cede0eb7363907564_1179x391.png) # 1.3软件中的模块化开发 一个功能就是一个模块, 多个模块可以组成完整应用,抽离一个模块不会影响其他功能的运行。 ![](https://img.kancloud.cn/72/1b/721bdfba4135b748cfd901df99735ebe_954x317.png) # 1.4 Node.js中模块化开发规范 (重点) ●Node.js规定一个**JavaScript文件**就是一 个模块,模块**内部定义的变量和函数**默认情况下在**外部无法得到** ●模块内部可以使用**exports对象进行成员导出**,使用**require方法**导 入其他模块。 ![](https://img.kancloud.cn/57/cd/57cd70d5e65c10ef60677fe7826a4f4d_803x383.png) ## let (声明 变量) # 1.5模块成员导出 (重点 exports 导出数据) ~~~ let 声明 //向模块外部导出数据 exports.version= version; exports. (导出的新名字) ~~~ ![](https://img.kancloud.cn/3d/49/3d497c15effacb1bc2a0868119969dbb_573x351.png) # 1.6模块成员的导入 (require 导入) ~~~ 导入 let a =require ('./b.js'); ~~~ ![](https://img.kancloud.cn/55/48/5548f3e7baa6f4745184291c7dee84bc_492x281.png) 使用 ![](https://img.kancloud.cn/70/41/7041dbec7508cdbdabacc2ae2cee61a8_1043x338.png) # 1.7模块成员导出的另-种方式 module.exports.version = version; ![](https://img.kancloud.cn/85/1e/851e4e5eb7df17ba2c204dac40116b1c_910x153.png) # 1.8模块导出两种方式的联系与区别 ![](https://img.kancloud.cn/ac/97/ac9735c465ab8ce5422ea2f2de3966b2_1061x500.png)