理解模块化 模块化定义 体验模块化 node.js中的模块分类

30 篇文章 0 订阅

模块化

目录

  1. 理解模块化
  2. 模块化定义
  3. 体验模块化
  4. node.js中的模块分类

理解模块化

在浏览器中,我们写代码时,

- index.html # 主页的页面
- index.js # 主页需要用到的js代码
---- getData()  
- tool.js # 为整个项目提供公共方法
---- doSomething(){ }

对于如上的代码结构,如何让index.js中的getData去使用tool.js中的doSomething()函数?

为什么不能直接让index.js来直接使用tool.js的函数,而要通过index.html来统一管理一下呢?

原因很简单:es5中不支持模块化(不能直接在一个js文件中去引用另一个js文件的方法,必须要通过第三个文件.html来引入)

模块化的定义

定义:

一个js文件可以引入其他的js文件,能使用引入的js文件的中的变量、数据,这种特性就称为模块化。

作用:

使用模块化开发可以很好的解决变量、函数名冲突问题,也能灵活的解决文件依赖问题。

模块化的发展

  • 以前
    es5不支持模块化,让前端人员很为难。为了让支持模块化,我们一般会借用第三方库来实现:
  • 现在
    • es6原生语法也支持模块化(并不表示浏览器也直接支持模块化 — 需要单独设置一下)
    • Nodejs内部也支持模块化(与es6的模块化有些不同之处),具体的语法在后面来介绍。

体验模块化

了解几种模块化的写法

  • nodejs的模块化
  • es6的模块化
  • sea.js
  • require.js

https://www.zhihu.com/question/20342350

nodejs中的模块分类

每个模块都是一个独立的js文件。每个模块都可以完成特定的功能,我们需要时就去引入它们,并调用。不需要时也不需要管它。(理解于浏览器的js中的Math对象)

核心模块

  • 就是nodejs自带的模块,在安装完nodejs之后,就可以随意使用啦。相当于学习js时使用的Array对象。
  • 例:fs, http, querystring, path
  • 全部模块的源代码 https://github.com/nodejs/node/tree/master/lib

自定义模块

  • 程序员自己写的模块。就相当于我们在学习js时的自定义函数。

第三方模块

  • 其他程序员写好的模块。nodejs生态提供了一个专门的工具npm来管理第三方模块,后面我们会专门讲到。
  • 相当于别人写好的函数或者库。例如我们前面学习的JQuery库,arttemplate等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>