js随笔
谈-恋-爱
这个作者很懒,什么都没留下…
展开
-
ECMA5中的新特性getter和setter
js ECMA5 getter&setter原创 2017-04-25 14:31:40 · 337 阅读 · 0 评论 -
JS原型设计模式(四)之缺陷二
在java中我们知道数组是引用类型,在js中同样,数组也是引用类型,所以在原型上使用的属性是数组的时候会出现意想不到的问题var Person=function (){};Person.prototype={ address:['北京市','上海市']};var person1=new Person();var person2=new Person();person1.a原创 2017-04-26 13:47:20 · 232 阅读 · 0 评论 -
JS原型设计模式之动态模式
在前面几章文章的介绍里面,使用的都是构造函数和原型属性分开的写法,这样就显示不了oo中封装的特性了,所以这章谈谈动态模式设计var Person=function(name,age,sex){ this.name=name; this.age=age; this.sex=sex; //方法一般写到最后 if(typeof this.sayInfo !原创 2017-04-26 14:08:20 · 282 阅读 · 0 评论 -
JS原型设计模式(三)
js 属性原创 2017-04-26 09:45:21 · 253 阅读 · 0 评论 -
JS原型设计模式(四)之缺陷(一)
js 原型缺陷原创 2017-04-26 11:09:56 · 383 阅读 · 0 评论 -
JS原型设计模式(一)
上面的文章介绍了构造函数模式:构造函数设计模式首先说明原型对象与原型属性的概念:原型属性:在js中每创建一个函数时,都会根据一套特定的机制给每一个函数添加一个属性 prototype这个属性就是原型属性,存在于函数中。原型对象:在js中每创建一个函数时会相对应得有一个原型对象的创建,这个函数的prototype属性所指的对象就是原型对象。那么原型对象的作用是什么呢? 在前面原创 2017-04-25 16:59:15 · 1140 阅读 · 1 评论 -
浅谈js中的call,apply,bind方法中的this指针
js call apply bind原创 2017-04-21 09:53:55 · 556 阅读 · 0 评论 -
JS中的Boolean基本类型与包装类型
boolean是都用过的类型,有基本类型和包装类型,之前写过一段代码,不知道错在哪里,后来翻阅书籍才知道原因var falseObject = new Boolean(false);//使用FALSE参数创建了一个Boolean类型的对象console.log(falseObject.valueOf());//faslevar result = falseObject && true;原创 2017-04-21 14:10:35 · 1096 阅读 · 0 评论 -
JS中的工厂模式
function createPerson(name,age,sex){ var obj=new Object(); obj.name=name; obj.age=age; obj.sex=sex; obj.sayInfo=function(){ console.log(this.name+"--"+this.age+"--"+this.se原创 2017-04-25 16:37:42 · 376 阅读 · 0 评论 -
JS构造函数设计模式
在上一篇文章中看到了工厂模式的缺点,又出现了构造函数的模式。工厂模式function Person(name, age, sex) { this.name = name; this.age = age; this.sex = sex; this.sayInfo = function () { console.log(this.name + "原创 2017-04-25 16:45:57 · 407 阅读 · 0 评论 -
JS原型设计模式(二)
在js中存在两个函数:isPrototypeOf()和hasOwnProperty()hasOwnProperty:用于判断对象是否含有这个属性,但是不包含原型链对象上的属性 使用方式:object1.hasOwnProperty(atttribute);isPrototypeOf:用于判断当前对象是否是参数对象的原型链上的原型对象 使用方式:object1.isPrototypeOf(原创 2017-04-25 20:34:09 · 472 阅读 · 0 评论 -
JS继承(一)
在OO语言中,几乎都有继承这一说法,但是在js中好像这一说法并不是太明确,但是在js中可以实现继承,使用的原理就是原型链继承,如果不明白原型链的读者请看前面我写的几篇文章,在返回这篇文章中。在js中实现继承是通过原型链继承的,但是如何能够继承一个特定类型的所有的属性和方法呢?只能是继承这个特定类型的实例,因为只有在实例中才能包含这个特定类型的所有属性和方法,当然也包含原型链上的方法,因为实例有原创 2017-04-26 15:26:32 · 211 阅读 · 0 评论