Skip to content

Commit 25b17a4

Browse files
committed
AJAX&NODE
1 parent 6f88ef8 commit 25b17a4

7 files changed

Lines changed: 235 additions & 0 deletions

File tree

.gitignore

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Logs
2+
logs
3+
*.log
4+
npm-debug.log*
5+
6+
# Runtime data
7+
pids
8+
*.pid
9+
*.seed
10+
11+
# Directory for instrumented libs generated by jscoverage/JSCover
12+
lib-cov
13+
14+
# Coverage directory used by tools like istanbul
15+
coverage
16+
17+
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
18+
.grunt
19+
20+
# node-waf configuration
21+
.lock-wscript
22+
23+
# Compiled binary addons (http://nodejs.org/api/addons.html)
24+
build/Release
25+
26+
# Dependency directory
27+
node_modules
28+
29+
# Optional npm cache directory
30+
.npm
31+
32+
# Optional REPL history
33+
.node_repl_history
34+
.idea
35+
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
function sum() {
2+
/* [
3+
0:[1,2,3,4,5,6,7,8,len:8]
4+
len:1
5+
]*/
6+
var total = null;
7+
[].forEach.call(arguments, function (item, index) {
8+
item = Number(item);
9+
!isNaN(item) ? total += item : null;
10+
});
11+
return total;
12+
}
13+
/*想要在B中调取A中的SUM,首先需要A中把SUM导出*/
14+
module.exports = {
15+
sum: sum
16+
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
/*A中已经同意我们调取SUM了,在B中我们把A模块导入即可*/
2+
var a = require('./A');
3+
function avg() {
4+
//arguments ->[1,2,3,4,5,6,7,8,len:8]
5+
var total = a.sum.apply(null, arguments);
6+
return (total / arguments.length).toFixed(2);
7+
}
8+
module.exports = {
9+
avg: avg
10+
};
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
var b = require('./B');
2+
var result = b.avg(10, 16, 18, 12, 17);
3+
console.log(result);
Lines changed: 161 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,161 @@
1+
周啸天
2+
QQ:1282347298
3+
TEL:13041086186
4+
微信:zhouxiaotian1990
5+
6+
1、第一件事情,开始着手做自己的PC项目(主要练习的是HTML+CSS)
7+
参考网址:
8+
京东:https://www.jd.com/
9+
淘宝:https://www.taobao.com/
10+
天猫: https://www.tmall.com/
11+
12+
腾讯视频:http://v.qq.com/
13+
爱奇艺:http://www.iqiyi.com/
14+
乐视:http://www.le.com/
15+
乐视体育:http://www.lesports.com/ (难)
16+
17+
拉勾:http://www.lagou.com/
18+
小米:http://www.mi.com/
19+
20+
QQ空间首页
21+
新浪微博
22+
23+
要求:首页的HTML+CSS(HTML5+CSS3),主体架构需要兼容IE低版本浏览器,效果部分采用jQuery实现
24+
25+
2、NODE+AJAX+HTTP+项目实战
26+
27+
3、每天晚上睡前半个小时或者一个小时把自己之前做的笔记从头到尾的看一遍(如果笔记做的不全的自己抽时间赶紧的去补一补)
28+
29+
-----------------------------------------------
30+
1、安装NODE
31+
2、在WebStorm中配置NODE的提示包
32+
WB11及以上的(自带,只需要启用即可)
33+
WB10及以下的(需要自己连网下载或者提前下载好提示包后然后在配置)
34+
35+
3、面试题:当我们在浏览器的URL地址栏中输入一个网址(http://www.zhufengpeixun.cn/)后,到看到整个网站,都发生了哪些事情?
36+
37+
在当前阶段一定要培养自己的总结和书写能力,自己搭建一个个人博客,把自己写的文章放上提取,让别人看,在这个圈子中提高自己的名气;做一个博客想让别人看到:
38+
1)买一台服务器(云服务器/虚拟主机->阿里云),连网(服务器上就会有一个外网的IP地址),在不做限制的情况下,别人通过外网的IP地址就可以访问到我们的服务器
39+
2)把自己做的博客项目的‘源代码(HTML/CSS/JS/IMG资源文件)’上传到服务器上某一个磁盘下的某一个文件夹中 =>把本地的项目文件上传到服务器上我们一般都是用FTP上传
40+
3)域名(万网->需要备案)
41+
4)域名解析/DNS解析:把我们的域名和外网的IP关联到一起
42+
43+
4、W3C
44+
浏览器也是按照w3c规范去渲染我们编写的代码的,每一个浏览器都会存在一个内核(渲染引擎),不同浏览器的内核是不一样的:
45+
I E: Trident IE6~11、IE edge、360、搜狗、猎豹...
46+
火狐: Gecko 火狐浏览器
47+
谷歌:WebKit(V8) 谷歌浏览器、Safari浏览器
48+
欧朋:Presto Opera浏览器
49+
50+
5、我们第一次把HTML页面的源代码请求回来的时候,浏览器的渲染引擎开始解析源代码,在解析源代码的时候,遇到link/script/img等标签,还会重新的向服务器发送请求,当所有的资源代码都请求回来的时候,页面加载完成,如果请求的次数多的话,第一次打开页面的速度就会变慢==>页面常规的优化手段:“减少HTTP请求次数”
51+
52+
思考题:回去后围绕减少HTTP请求次数的方案,总结优化的具体步骤,例如:CSS和JS进行合并....
53+
54+
55+
6、扫盲
56+
WINDOWS+R -> (运行)cmd ->打开DOS命令窗口
57+
58+
=>如何查看自己电脑的IP地址
59+
ipconfig 或者 ipconfig -all
60+
61+
如果两个人连接的是同一个网络(同一个WIFI/同一个路由器),两个人的子网掩码和默认网关也是一样的,此时两个人就在同一个局域网(内网)中
62+
63+
=>清除之前的内容 cls
64+
65+
=>查看自己的网速
66+
ping www.baidu.com 或者 ping www.baidu.com -t
67+
68+
=>停止当前的操作 ctrl+c
69+
70+
=>退出当前窗口 exit
71+
72+
=>进入到当前电脑指定磁盘下的某一个文件夹中,在这个文件夹中通过DOS命令来做某些事情
73+
D: 直接进入到D盘
74+
dir 查看当前目录下所有的文件和文件夹
75+
cd 20161007 进入到某一个文件夹中
76+
77+
cd ../ 返回上一级目录
78+
cd ./ 当前目录
79+
cd / 返回根目录
80+
81+
mkdir zf 在当前目录中创建一个文件夹
82+
copy con xxx.txt (后缀名可以自己随便.txt/.css/.html/.js...) 在当前目录中创建一个文件,并且向文件中写入内容=>结束内容编辑:CTRL+Z,ENTER\
83+
del xxx.txt 删除当前目录中的某一个文件
84+
rmdir xxx 删除当前目录中的某个文件夹
85+
86+
以上操作太麻烦了,如果我们想在某一个文件目录中快速打开DOS命令,没必要使用CD CD CD...这样找了,只需要直接找到对应的目录,然后在这个目录中:SHIFT+右键:在此处打开命令窗口,这样就可以快速的在某个目录下打开DOS命令了
87+
88+
7、NODE
89+
->什么是NODE
90+
NODE并不是一门语言,它仅仅是一个软件/平台,用来解析JS代码的平台
91+
在没有NODE之前,我们的JS代码只能放在客户端的浏览器中进行解析(所以说JS是一门轻量级的客户端脚本编程语言)(前端开发)
92+
有了NODE之后,我们可以把NODE安装到服务器上,JS就可以在服务器的NODE环境中运行了,所以说我们也可以使用JS来编写一些服务器端需要的程序(后台开发)
93+
94+
->NODE是基于V8引擎来渲染JS的(如果使用JS开发后台程序,我们不需要在考虑兼容了)
95+
96+
->如何把我们的JS放在NODE中执行?
97+
1)在WB中调取NODE.EXE文件,把我们写的JS代码执行 ->JS代码中,右键 Run xxx.js
98+
2)在DOS命令窗口中通过执行 node xxx.js 把JS代码执行
99+
100+
->NODE相对于传统后台语言(JAVA/PHP/.NET/C#)的优势和不足?
101+
不足:NODE永远替代不了他们,因为目前来说NODE比较年轻,很多东西都没有其它的语言完善
102+
优势:
103+
采用V8引擎渲染JS,所以比较的快
104+
提供了无阻塞的I/O操作(I/O操作:文件的增删改查)
105+
基于事件驱动的单线程异步处理
106+
107+
108+
->NODE平台中提供了I/O操作,我们以后使用JS就可以对文件进行增删改查了
109+
 JS在客户端浏览器中运行的时候,是否提供了对于文件的操作? 不能,这样才能保证客户端的安全
110+
111+
->NODE中的模块
112+
内置模块:NODE天生为JS提供的 HTTP/FS/URL
113+
114+
自定义模块:自己写的
115+
需求:我们想创建A/B/C三个自定义模块
116+
A模块中有一个方法叫做sum,实现任意数求和
117+
B模块中有一个方法叫做avg,实现求平均数(求平均数的第一步求和,需要调取A中的sum方法)
118+
C模块中调取B模块中的avg方法实现,10 16 18 12 17这几个数的平均数
119+
120+
121+
122+
123+
第三方模块:别人写好的我们拿过来调取使用
124+
如何使用第三方模块
125+
https://www.npmjs.com/ NPM是NODE天生自带的用来管理第三方模块的命令
126+
127+
[下载]
128+
在DOS命令中
129+
npm install less 把LESS安装到当前项目中,只有当前的项目能使用
130+
npm install less -g 把LESS安装到全局下,以后所有的项目都可以使用
131+
132+
[导入]
133+
var aa=require('less');
134+
135+
[调取方法]
136+
aa.render();
137+
138+
139+
140+
预习:
141+
133 134
142+
143+
144+
145+
146+
147+
148+
149+
150+
151+
152+
153+
154+
155+
156+
157+
158+
159+
160+
161+
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
var a = 12;
2+
var b = 13;
3+
var c = a;
4+
a = b;
5+
b = c;
6+
console.log(a, b);
7+
8+
/*使用安装的LESS模块*/
9+
var aa = require('less');
10+
aa.render();
168 KB
Loading

0 commit comments

Comments
 (0)