一,主要内容
- 什么是模块化
- 为什么使用模块化
- 模块嵌套
- Requirejs使用
1.1 模块化产生
模板就是实现特定功能的一组方法
只要把不同的函数(以及记录状态的变量)简单地放在一起,就算是一个模块。
1.2为什么使用模块化
模块的优点
• 可维护性。 因为模块是独立的,一个设计良好的模块会让外面的代码对自己的依赖越少越好,这样自己就可以独立去更新和改进。
• 命名空间。 在 JavaScript 里面,如果一个变量在最顶级的函数之外声明,它就直接变成全局可用。因此,常常不小心出现命名冲突的情况。使用模块化开发来封装变量,可以避免污染全局环境。
• 重用代码。 我们有时候会喜欢从之前写过的项目中拷贝代码到新的项目,这没有问题,但是更好的方法是,通过模块引用的方式,来避免重复的代码库
1.3 js作用域问题
Js的作用域是函数作用域
代码:
var name='zhangsan';//全局
function demo(){
var name='lisi';//局部
}
for(var i=0;i<100;i++){
var age=10;//全局
}
//下面代码执行的结果?
var arr=[10,20,30,40,50];
for(var i=0;i<arr.length;i++){
arr[i]=function(){
console.log(i);
}
}
arr[2]();//打印结果?
结果分析:
怎么获取当前的下标对应的数据
//闭包解决 变量作用域问题---
var arr=[10,20,30,40,50];
for(var i=0;i<arr.length;i++){
arr[i]=(function(i){
return function(){
console.log(i);
}
})(i);
}
arr[3]();//打印结果?
二、 模块化实现
2.1 模块的写法
一、原始写法
蓝莓派---分页器 addPage() addEvent(