标签:
第一部分:
1.DOM结构:
节点之间可能存在的关系:firstChild lastChild parentNode nextSibling previousSibling childNodes
节点操作 增删改查:appendChild() insertBefore() removeChild() replaceChild()
创建新节点:createDocumentFragment() createElement() createTextNode()
2.事件
3.XMLHttpRequest
var xhr=new XMLHttpRequest()
第一个方法 xhr.open("get",‘example.html‘,false);
第二个方法 xhr.send(null);//这个方法调用之后 请求才会分派到服务器
响应属性 responseText 响应主体被返回的文本
responseXML
status:响应的HTTP状态
statusText:HTTP状态的说明
readyState 表示请求过程的当前活动状态 0:未初始化 尚未调用open() 1:启动:已经调用open 尚未调用send() 2:发送 已经调用send() 但尚未接收到响应
3:接收 已经接收到部分响应数据 4:完成 已经接收到全部响应数据 而且已经可以在客户端使用了。
get请求 最常用于向服务器查询某些信息
post请求 通常用于向服务器发送应该被保存的数据
4.跨域技术
图像Ping 是与服务器进行简单 单向的跨域通信的一种方式 通过监听load error事件
JSONP由两部分组成:回调函数和数据 (填充式JSON或参数式JSON)通过动态script来使用的
简单的JSONP请求:http://.../?callback=handleResponse
优点:能够直接访问响应文本 支持浏览器和服务器之间双向通信
缺点:从其他域中加载代码 如果其他域不安全 有可能夹带一些恶意代码 其次要确定JSONP请求是否失败不容易
5.严格模式和混杂模式:
严格模式是为javascript定义了一种不同的解析和执行模型
6. JSON作用和用途
JSON对象的两个方法:stringify() parse()
第二部分 javascript
1.callee argument.callee是一个指向正在执行的函数的指针 使用递归的时候比较有用
caller返回一个函数的引用,这个函数调用了当前的函数
Array.prototype.slice.call(arguments)能够将arguments转成数组
call apply 动态改变某个方法的运行环境
2.匿名函数自执行的三种方式
(function(){})()
(function(){}())
void function(){}()
3.作用域的作用是保证执行环境里有权访问的变量和函数是有序的。作用域链的变量只能向上访问
4.工厂模式:可以消除对象间的耦合。将所有实例化的代码集中在一个位置防止代码重复
缺点:无法清楚他们到底是哪个对象的实例
Object.prototype.clone = function(){
var o = this.constructor === Array ? [] : {};
for(var e in this){
o[e] = typeof this[e] === "object" ? this[e].clone() : this[e];
}
return o;
}
标签:
原文地址:http://www.cnblogs.com/cd-2015/p/5422335.html