摘要: this是谁和函数在哪定义的和在哪执行的没有半毛钱的关系,如果想判断this就找到函数执行的地方,按照如下五条规律判断this的指向:1、自执行函数中的this永远是window //定时器绑定方法中的this是window window.setTimeout(function(){ ... 阅读全文
posted @ 2015-10-13 12:48 cataway 阅读(768) 评论(2) 推荐(0) 编辑
摘要: 有个需求:过一秒后执行fn,传递一个数字100,让fn中的this变为obj,输出"柯理化函数100" var name = "window"; var obj = {name: "柯理化函数"}; function fn(e, num) { console.log(... 阅读全文
posted @ 2015-12-28 23:15 cataway 阅读(336) 评论(0) 推荐(0) 编辑
摘要: javascript跨域有两种情况:1、基于同一父域的子域之间,如:a.c.com和b.c.com2、基于不同的父域之间,如:www.a.com和www.b.com3、端口的不同,如:www.a.com:8080和www.a.com:80884、协议不同,如:http://www.a.com和htt... 阅读全文
posted @ 2015-12-05 23:34 cataway 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 惰性思想:能处理一遍的,不需要再处理第二遍,主要是用来处理浏览器兼容或者其他逻辑问题。 var util = { getXHR: (function () { //先把所有出现的可能放到一个数组里 //遍历这个数据,找到当前浏览器最合适... 阅读全文
posted @ 2015-12-05 20:31 cataway 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 1、所有的事件绑定都是异步编程 oImg.onload=function(){} ->图片延迟加载 oLis[i].onclick=function(){} ->循环绑定事件(自定义属性和闭包的解决方式)2、定时器都是异步编程的 var count=0; window.setTime... 阅读全文
posted @ 2015-12-01 20:11 cataway 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 一、原型继承B.prototype=new A; 子类的原型等于父类的一个实例把父类A中私有的属性和公有的属性都继承过来,变为子类B中公有的属性 function A() { this.x = 100; } A.prototype = { ... 阅读全文
posted @ 2015-11-30 14:59 cataway 阅读(629) 评论(0) 推荐(0) 编辑
摘要: function Fn(num) { this.x = num;}一、给Fn.prototype起一个别名 var pro = Fn.prototype; pro.getX = function () { } pro.setX = fu... 阅读全文
posted @ 2015-11-25 23:17 cataway 阅读(737) 评论(0) 推荐(0) 编辑
摘要: 原型链模式(继承\在内置类的原型上扩展方法)构造函数模式虽然实现了我们的批量生产和实例识别,但是不能把一些方法提取成公有的方法基于构造函数模式的原型链模式 function CreateJsPerson(name) { this.name = name; this.b ... 阅读全文
posted @ 2015-11-25 22:52 cataway 阅读(712) 评论(0) 推荐(0) 编辑
摘要: 工厂模式虽然实现了批量生产,但是不能进行品牌的区分-->"实例识别"对象:一个泛指,js中万物皆对象类:对象的一个具体的细分实例:类中一个具体的事物例如:自然界中万物皆对象,我们把自然中的事物分为了几大类:人类、动物类、植物类...而每一个人都是我们人类中的一个实例我们想学习js,我们需要给js分类... 阅读全文
posted @ 2015-11-25 21:51 cataway 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 单例模式虽然实现了分组,但是还处于手工作业模式,不能实现批量的生产工厂模式实现一个方法,把实现同一个功能的代码进行封装,以后再想实现这个功能,就不需要再重新编写这些代码了,直接的执行这个方法即可作用:减少页面当中的冗余代码,提高代码的重复利用率--"低耦合高内聚"函数的封装:把相同的代码放在一个函数... 阅读全文
posted @ 2015-11-24 22:40 cataway 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 用基本数据类型来描述一件事物,需要把每一个特性都当做单独的变量进行存储,这样的话,后面如果另外一件事物的特性和这一件一样了,就会把这一件的替换掉--->全局变量的冲突,后面的会把前面的覆盖掉 var name = "A小伙伴"; var age = 11; var name = "B... 阅读全文
posted @ 2015-11-24 21:03 cataway 阅读(130) 评论(0) 推荐(0) 编辑