Javascript高级(进阶)
1、预处理阶段
LE:预处理阶段
Document
2、作用域
Document
?
?
3、变量提升
Document
4、自由变量
Document
?
5、数据类型
Document
6、声明
Document
?
7、reverse
Document
8、递归
Document
9、统计字符串中出现最多的字符和次数
Document
10、去重
Document
11、判断为空的方法
Document
12、数组
Document
13、filter
Document
14、函数累加器
Document
15、最大值最小值
Document
16、数组遍历
Document
polyill.js
// forEach() 函数的polyfill
Array.prototype.forEach = Array.prototype.forEach ||
function(fn,context){
for(var k=0,length = this.length;k
17、数组去重
Document
18、Date
# 关于日期可以使用一下两种类库
Moment.js 与 Data.js
需要注意日期合法校验!
19、函数的定义和调用
Document
20、函数参数
Document
21、闭包
Document
22、_ this
Document
23、call、apply、bind
Document
24、对象的属性和访问方式
Document
25、创建对象
Document
26、对象克隆
Document
27、原型对象
Document
28、_ proto _
Document
29、继承
Document
30、Object及其实例和静态函数
Document
31、HtmlCollection
Document
aaa
bbb
32、事件流
Document
这是td元素
33、事件处理程序
Document
监听点击事件
EventUtil.js
var EventUtil = {
// 兼容IE和谷歌的DOM2级的方法
addEventHandler:function(element,type,handler){
if(element.addEventListener){
element.addEventListener(type,handler);
}else if(element.attchEvent){
element.attchEvent('on'+type,handler);
}else{
return 'error';
}
},
removeEventHandler:function(element,type,handler){
if(element.addEventListener){
element.removeEventListener(type,handler);
}else if(element.attchEvent){
element.detachEvent('on'+type,handler);
}else{
return 'error';
}
},
// 获取事件对象
getEvent:function(event){
return event || window.event;
},
// 获取事件目标元素
getTarget:function(event){
return event.target || event.srcElement;
}
}
34、_ event对象
Document
?
-
姓名:老师
学号:123456
?
35、阻止默认行为
Document
?
36、事件委托
Document
?
?
- 文本1
- 文本2
- 文本3
- 文本4
- 文本5
- 文本6
- 文本7
- 文本8
- 文本9
?
37、浏览器的重排与重绘
Document
38、Ajax执行原理与过程
Document
39、Nodejs简单搭建
# 首先下载node.js
创建一个文件夹,这里叫ajaxTest,然后在文件夹里再打开终端
初始化 : npm init 直接回车
安装Express框架和body-parser: npm install experss --save-dev
# 安装方式不同
npm install moduleName -安装到模块项目目录下
npm install -g moduleName -g就是安装到全局,要看具体位置就 npm config prefix
npm install -save modouleName # -save的意思就是将模块安装到项目目录下,并在package文件的dependencies节点写入依赖
npm install -save-dev modouleNmae # -save-dev 的意思是将模块安装到项目目录下,并在package文件的devDependencies节点写入依赖
?
# 在处理post请求时,需要body-parser插件
所以使用:npminstall body-parser --save-dev
?
# 创建server.js文件
var express = require('express');
//接收post请求体数据的插件
var bodyParser = require('body-parser');
?
var app = express();
app.use(bodyParser());
// 接收"/"请求,指定首页
app.get('/',function(req,res){
res.sendFile(_dirname+'/index.html');
})
// 处理get请求
app.get('/',function(req,res){
console.log(req,query);
})
// 处理post请求
app.post('/saveUser',function(req,res){
var responseObj = {
code:200,
message:'请求成功'
};
res.write(JSON.stringify(responseObj));
res.end('end');
})
var server = app.listen(3000,function(){})
?
# 也可以自己编写一个访问地址 index.html
?
!DOCTYPE html>
Document
hello ajax
?
# 使用 node server.js 测试
?
?
40、Ajax提交form表单
Document
?
41、Ajax的post与get
Document
?
42、Ajax进度事件
Document
43、JSON序列化与反序列化
Document
44、CORS、JSONP
Document