AMD模块化开发
Asynchronous Module Definition (异步模块定义规范)
特点: 依赖前置,需要哪个模块,提前引入。
第一步: 使用amd 方式 首先需要引入require.js,这是一个第三方库, amd 规范
<script src="js/require.js"></script>
第二步:定义每一个js文件
//语法:
// define('模块名',执行函数)
//执行函数中使用对应的逻辑语法 ,最后函数中使用return 抛出变量
// a.js
define('moduleA', function () {
let a = 1;
return { a }
})
// 语法:defin:定义的意思
// define('模块名',[依赖的模块名称1,依赖的模块名称2],执行函数(依赖函数名称作为形参))
// b.js
define('moduleB', ['moduleA'], function (moduleA) {
var b = 'bbb'
return {
b,
moduleA,
}
})
// 语法:require:需求的意思
// require(['依赖模块名1','依赖模块名2'],function(依赖模块名1,依赖模块名2){执行程序})
//c.js
require(['moduleB'], function (moduleB) {
console.log(moduleB);
})
// c文件为最终执行的文件,但是它依赖于a文件和b文件,如果a文件和b文件执行的慢,则c文件就要等待很长时间
第三步:页面中引入其他相关的js文件
引入对应js文件
<script src="./js/a.js"></script>
<script src="./js/b.js"></script>
<script src="js/c.js"></script>
nodejs概念
首先js是一门脚本语言,需要依赖浏览器 加载解析js程序,只能依赖HTML才能运行;
nodejs可以让js 脱离浏览器运行,它是js 得一个运行环境,是从google 浏览器中v8引擎抽离出来得代码然后进行单独封装,做出来的软件。
nodejs 提供了一个js 得运行环境,让js 可以开发后台服务器语言。
相关网址:
- https://nodejs.org/zh-cn/
- http://nodejs.cn/
注意:
1. nodejs实现了js代码在浏览器外执行,所以在nodejs中无法运行DOM和BOM的代码
2. nodejs中除了ECMAScript代码外,还内置了很多其他API
3. nodejs让js在写前端代码的基础上,可以写后端代码,因为nodejs可以构建服务器
4. 不用在考虑浏览器的兼容性问题了,因为不在浏览器上运行了