JavaScript在使用时存在两大问题,文件依赖命名冲突

文件依赖:文件之间的依赖关系,通过文件来自动维护,而不需要人工分析
命名冲突:JavaScript中不同js文件,变量是完全开放的,相同变量名会被覆盖.在Node.js中可是使用export关键字,来约束哪些变量可以被别的文件使用,哪些不可以

Node.js中模块化开发规范
Node.js规定一个JavaScript文件就是一个模块,模块内部定义的变量和函数默认情况下在外部无法得到
模块内部可以使用exports对象进行成员导出, 使用require方法导入其他模块。

a.js

  // a.js// 在模块内部定义变量let version = 1.0;// 向模块外部导出数据 exports.version = version;
  // b.js// 在b.js模块中导入模块alet a = require('./a.js');// 使用a模块中的version变量console.log(a.version);

exports是module.exports的别名(地址引用关系),导出对象最终以module.exports为准
module.exports.version = version;

另一种写法

module.exports = { name: 'zhangsan',
}

Node.js 模块化开发相关推荐

  1. Node.js模块化开发(非常详细,满满的干货)

    下面是对Node.js模块化开发的整理,西洼港可以帮助到有需要的小伙伴~ 文章目录 Node.js模块化开发 JavaScript开发弊端 Node.js模块化开发 模块成员导出的export方法 模 ...

  2. Node.js模块化开发

    Node.js模块化开发 一.Node.js模块化开发 二.系统模块 1.什么是系统模块 2.系统模块fs文件操作 3.系统模块path路径操作 三.第三方模块 1.什么是第三方模块 2.获取第三方模 ...

  3. 模块加载及第三方包:Node.js模块化开发、系统模块、第三方模块、package.json文件、Node.js中模块的加载机制、开发环境与生产环境、cookie与session

    1.Node.js模块化开发 1.1 JavaScript开发弊端 JavaScript 在使用时存在两大问题,文件依赖和命名冲突. 1.2 软件中的模块化开发 一个功能就是一个模块,多个模块可以组成 ...

  4. Node.js模块化开发||Node.js中模块化开发规范

    JavaScript开发弊端 a.js b.js JavaScript在使用时存在两大问题,文件依赖和命名冲突. 生活中的模块化开发 软件中的模块化开发 app.j user.一个功能就是一个模块,多 ...

  5. Node.js 模块化的操作,简单明了的代码帮助你明白后端的实现和前端之前的交互,及解决跨域等问题

      Node.JS 模块化 1.require 导入模块const http=require('http')2.exports 导出模块db={name:'jine',age:22} module.e ...

  6. 浅谈前端JS模块化开发的概念

    引子: 前端开发模块化,这个概念从我接触前端开发就一直看到,但是一直没好好的梳理这其中的概念,直到最近才感觉对这其中的概念是很陌生而熟悉.因此记此梳理里面的一些名词. 模块化: 整个web的发展越来越 ...

  7. node.js的开发流程_Node.js子流程:您需要了解的一切

    node.js的开发流程 by Samer Buna 通过Samer Buna Node.js子流程:您需要了解的一切 (Node.js Child Processes: Everything you ...

  8. 《Node.js入门》Windows 7下Node.js Web开发环境搭建笔记

    最近想尝试一下在IBM Bluemix上使用Node.js创建Web应用程序,所以需要在本地搭建Node.js Web的开发测试环境. 这里讲的是Windows下的搭建方法,使用CentOS 的小伙伴 ...

  9. php微信墙开发,Node.js如何开发微信墙

    这次给大家带来Node.js如何开发微信墙,Node.js开发微信墙的注意事项有哪些,下面就是实战案例,一起来看一下. 验证服务器有效性 接收用户通过微信订阅号发给服务器的消息 解析收到的XML文本消 ...

最新文章

  1. Java基础篇:常用类
  2. 深度学习主机环境配置: Win10+Nvidia GTX 1080i+CUDA8.0+CUDDN6
  3. lan8720a自协商启动_紫金矿业2020届校招海外9站全面启动(面向全专业)
  4. 计算机不小心删除怎么找回桌面,如何将桌面上误删的文件找回
  5. 「软件项目管理」一文详解软件配置管理计划
  6. Windows文本文件编码
  7. 三星Galaxy S22系列发布会准确时间曝光:2月9日正式揭晓
  8. haproxy是如何工作的?
  9. git can‘t merge 的处理 代码冲突问题的解决
  10. mysql使用命令访问数据库_mysql命令操作数据库
  11. CVE-2017-8046 复现与分析
  12. 三分钟细数几款可视化前端开发工具
  13. 【第一阶段 day25 面向对象】 多态
  14. Niubility!华为天才少年自制机械臂能给葡萄缝针
  15. 人机交互-13-复习总览
  16. 移动端字体显示大小和css设置大小的不一致解决方案
  17. 在职研究生计算机专业学什么区别,计算机专业在职研究生考试科目有哪些?
  18. 学生成绩管理系统(完整版)
  19. 【面试题】 10.11. 峰与谷
  20. 不动点迭代求解方程数值解

热门文章

  1. row number函数_窗口函数介绍及案例实战
  2. dbcc dbreindex server sql_SQL Server数据库碎片整理
  3. python模拟按键_Python实现windows下模拟按键和鼠标点击的方法
  4. Python+pandas+matplotlib控制不同曲线的属性
  5. 1000道Python题库系列分享六(40道)
  6. 1005. K 次取反后最大化的数组和(javascript)
  7. java迭代是引用_在迭代递归结构时无法获得可变引用:不能一次多次借用可变引用...
  8. python爬虫select用法_Python爬虫利器二之Beautiful Soup的用法
  9. 视觉SLAM——ceres非线性最小二乘求解器
  10. tensorflow分类的loss函数_tensorflow中loss函数