- 高阶函数
可作为参数传递,可作为返回值返回 - jQuery的fn
jQuery.fn == jQuery.prototype
jQuery.extend(object);为扩展jQuery类本身,为类添加新的方法。
jQuery.fn.extend(object),给jQuery对象添加方法。
$.extend({minValue:function(a,b){return a<b?a:b;}})
$.minValue(5,6);
$.fn.extend({
theAlert:function(){alert("自定义的函数");}
})
$("thediv").theAlert()
- http/https协议,跨域访问的方式,原理
http通讯过程
1)建立tcp连接
2)向服务器发送请求命令
3)发送请求头信息
浏览器发送其请求命令之后,还要以头信息的形式向Web服务器发送一些别的信息,之后浏览器发送了一空白行来通知服务器,它已经结束了该头信息的发送。
4)服务器应答
客户机向服务器发出请求后,服务器会客户机回送应答, HTTP/1.1 200 OK ,应答的第一部分是协议的版本号和应答状态码。
5)服务器发送应答头信息
如客户端会随同请求发送关于自身的信息一样,服务器也会随同应答向用户发送关于它自己的数据及被请求的文档。
6)服务器逻辑处理后发送数据
Web服务器向浏览器发送头信息后,它会发送一个空白行来表示头信息的发送到此为结束,接着,它就以Content-Type应答头信息所描述的格式发送用户所请求的实际数据。
7)服务器关闭tcp连接
跨域访问
jsonp:引用不同域上的js脚本
- js基本类型,typeof返回类型,引用类型
基本类型:undefined,string,null,boolean,number
typeof返回类型:typeof null == object
基本类型 | 引用类型 |
---|---|
值不可变 | 值可变 |
不可拥有方法 | 拥有方法 |
比较是值的比较 | 比较是引用的比较 |
- 深拷贝和浅拷贝
只针对于object和array复杂的对象
深拷贝是对象属性所引用的对象全部进行新建对象复制,包括子对象,重新开辟一个栈,两个对象互不影响
str = JSON.stringify(obj), //系列化对象
newobj = JSON.parse(str); //还原
浅拷贝是复制对象地址,修改一个都对象的属性,另一个对象的属性也会改变