首页 > 代码库 > js(3)面向对象的程序设计
js(3)面向对象的程序设计
面向对象(OO)语言都有一个标志,就是都有类的概念,而通过类可以创建多个具有相同属性和方法的对象
一:进行创建对象
1,工厂模式:
工厂模式是使用函数来封装特定接口的创建对象胡细节,代码如下:
function createPerson(name,age,job){ var o=new Object(); o.name=name; o.age=age; o.job=job; o.sayName=function(){ alert(this.name) } return o } var Person1=createPerson("zhangningning",21,"doctor")
缺点:没有解决对象识别的问题
2.构造函数模式:
通过创建自定义的构造函数,
代码如下:
function Person(name,age,job){ this.name=name; this.age=age; this.sayname=function(){ alert(this.name) } } var person1=new Person("zhangningning",21,"student")
使用new操作符的过程:
(1),创建一个新对象
(2),将构造函数中的作用域赋给新对象
(3),执行构造函数中的代码
(4),返回新对象
缺点:会导致不同实例上的同名函数是不相同的
通过构造函数创建的实例中存在一个constructor属性,这个属性指向person
3,原型模式
每个函数都有一个原型属性,属性是一个指针,指向一个对象,对象包含由特定类型的所有实例共享的属性和方法
可以将方法添加到原型中,所有的实例就都会共享
可以通过对象实例访问保存在原型中的值,不能通对象实例重写原型中的值,如果在实例中添加一个属性,这个属性和原型对象中的属性同名,就会覆盖原型中的属性
js(3)面向对象的程序设计
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。