Skip to content

Commit 5265f1f

Browse files
author
陈迪
committed
update
1 parent 1e3d052 commit 5265f1f

1 file changed

Lines changed: 99 additions & 167 deletions

File tree

README.md

Lines changed: 99 additions & 167 deletions
Original file line numberDiff line numberDiff line change
@@ -1,167 +1,99 @@
1-
学习
2-
+ __AMD,CMD,CommonJS__ 这几种规范是什么
3-
4-
AMD规范,定义一个API define()所有module定义都通过
5-
+ __Nodejs__
6-
7-
JS运行时,脱离浏览器限制.跨平台.提供系统级API访问功能,进程,I/O等等.
8-
* __npm__
9-
* Node的包管理工
10-
11-
* __如何异步加载JS文件,并让其执行__
12-
13-
在HtmlDom中添加script接点.这也是这些模块加载工具的实现,在代码执行完,
14-
进入内存之后,移除节点.
15-
* 参考:http://www.zhihu.com/question/20342350
16-
* __require.js__
17-
一个异步模块加载工具,模块一般需要实现AMD规范.
18-
19-
定义模块:
20-
需要有一个返回对象,对象是当前module的公开API
21-
define("moduleB",["a","b","c"],
22-
function(a,b,c){
23-
var funcB = function(){
24-
alert("funcB");
25-
}
26-
return {
27-
funcB:funcB
28-
};
29-
}
30-
);
31-
32-
使用模块:
33-
引用的module(define回调函数返回的),会在加载完成之后依次回调.
34-
require(['jquery','b'],function($,b){
35-
//既然我在开头明确声明依赖需求,那可以确定在执行这个回调函数时,依赖
36-
肯定是已经满足了
37-
//所以,放心地使用吧
38-
})
39-
40-
41-
42-
43-
44-
45-
46-
* __sea.js__
47-
* 一个异步加载工具,遵循所谓的CMD规范(自己起的),可以想Node一样的风格
48-
书写代码.
49-
50-
定义模块:
51-
define(function(require,exports,modules){
52-
var $ = require('jquery')
53-
$.get('http://www.zhihu.com')
54-
//传统JS程序员的思维:
55-
//“咦,好神奇,JS加载不应该是异步的么,怎么我一说要依赖,jquery就自己
56-
跳出来了?”
57-
})
58-
使用模块:
59-
G.use(['./a','./b'],function(a , b){
60-
a.doSomething();
61-
b.doSomething();
62-
});
63-
* __G.js__
64-
65-
参照Sea.js实现
66-
在定义的时候,如果单使用G.js,可以照着api来,如果要基于ng-static,
67-
将require,export,module当做全局变量来使用,define中function的内容
68-
拿出:
69-
var a = require("A.js");
70-
exprots = {
71-
a: a.A;
72-
}
73-
74-
* __jquery.js__
75-
* $.extend (obj1,obj....);将后边对象合并到obj1中
76-
77-
78-
* __underscore.js__
79-
* 扩展了一些常用的功能,提供一套函数式编程的功能.
80-
* __zepto.js__
81-
*
82-
* __backbone.js__
83-
* 一个MVC框架
84-
*
85-
* __css---@import__
86-
*
87-
* __grunt__
88-
* 前端构建工具,基于Nodejs的一个工具,可以对js,css等做一些预处理工作.
89-
* __前端构建工具__
90-
*
91-
* __自动化__
92-
*
93-
* __前端模板技术__
94-
*
95-
* __JS和Html混合__
96-
*
97-
* __undercoser模板技术__
98-
*
99-
* __widget__
100-
101-
102-
103-
104-
105-
106-
107-
108-
109-
110-
111-
112-
113-
114-
115-
116-
117-
118-
119-
120-
121-
122-
123-
124-
125-
126-
127-
128-
129-
130-
131-
132-
133-
134-
135-
136-
137-
138-
139-
140-
141-
142-
143-
144-
145-
146-
147-
148-
149-
150-
151-
152-
153-
154-
155-
156-
157-
158-
159-
160-
161-
162-
163-
164-
165-
166-
167-
1+
学习
2+
+ __AMD,CMD,CommonJS__ 这几种规范是什么
3+
4+
AMD规范,定义一个API define()所有module定义都通过
5+
+ __Nodejs__
6+
7+
JS运行时,脱离浏览器限制.跨平台.提供系统级API访问功能,进程,I/O等等.
8+
* __npm__
9+
* Node的包管理工
10+
11+
* __如何异步加载JS文件,并让其执行__
12+
13+
在HtmlDom中添加script接点.这也是这些模块加载工具的实现,在代码执行完,
14+
进入内存之后,移除节点.
15+
* 参考:http://www.zhihu.com/question/20342350
16+
* __require.js__
17+
一个异步模块加载工具,模块一般需要实现AMD规范.
18+
19+
定义模块:
20+
需要有一个返回对象,对象是当前module的公开API
21+
define("moduleB",["a","b","c"],
22+
function(a,b,c){
23+
var funcB = function(){
24+
alert("funcB");
25+
}
26+
return {
27+
funcB:funcB
28+
};
29+
}
30+
);
31+
32+
使用模块:
33+
引用的module(define回调函数返回的),会在加载完成之后依次回调.
34+
require(['jquery','b'],function($,b){
35+
//既然我在开头明确声明依赖需求,那可以确定在执行这个回调函数时,依赖
36+
肯定是已经满足了
37+
//所以,放心地使用吧
38+
})
39+
40+
41+
42+
43+
44+
45+
46+
* __sea.js__
47+
* 一个异步加载工具,遵循所谓的CMD规范(自己起的),可以想Node一样的风格
48+
书写代码.
49+
50+
定义模块:
51+
define(function(require,exports,modules){
52+
var $ = require('jquery')
53+
$.get('http://www.zhihu.com')
54+
//传统JS程序员的思维:
55+
//“咦,好神奇,JS加载不应该是异步的么,怎么我一说要依赖,jquery就自己
56+
跳出来了?”
57+
})
58+
使用模块:
59+
G.use(['./a','./b'],function(a , b){
60+
a.doSomething();
61+
b.doSomething();
62+
});
63+
* __G.js__
64+
65+
参照Sea.js实现
66+
在定义的时候,如果单使用G.js,可以照着api来,如果要基于ng-static,
67+
将require,export,module当做全局变量来使用,define中function的内容
68+
拿出:
69+
var a = require("A.js");
70+
exprots = {
71+
a: a.A;
72+
}
73+
可以去掉Gbuilder配置文件的uglify
74+
* __jquery.js__
75+
* $.extend (obj1,obj....);将后边对象合并到obj1中
76+
77+
78+
* __underscore.js__
79+
* 扩展了一些常用的功能,提供一套函数式编程的功能.
80+
* __zepto.js__
81+
*
82+
* __backbone.js__
83+
* 一个MVC框架
84+
*
85+
* __css---@import__
86+
*
87+
* __grunt__
88+
* 前端构建工具,基于Nodejs的一个工具,可以对js,css等做一些预处理工作.
89+
* __前端构建工具__
90+
*
91+
* __自动化__
92+
*
93+
* __前端模板技术__
94+
*
95+
* __JS和Html混合__
96+
*
97+
* __undercoser模板技术__
98+
*
99+
* __widget__

0 commit comments

Comments
 (0)