js创建对象的方式及其特点

js创建对象的方式有很多种,每种方式都有各自的优缺点,所以选择一个合适的创建对象的方式是很重要的,下面的内容为大家介绍了js创建方式的几种方式。

1.工厂模式

function createPerson(name){   //1、原料    var obj=new Object();   //2、加工    obj.name=name;    obj.showName=function(){       alert(this.name);    }         //3、出场     return obj; } var p1=createPerson('小米');p1.showName();

登录后复制

优点:解决了创建相似对象的问题

缺点:并不能zhi知道一个对象的lei’类型

2.构造函数

function CreatePerson(name){  this.name=name;  this.showName=function(){    alert(this.name);  }}    var p1=new CreatePerson('小米');

登录后复制

优点:可以将一些实例表示为一种特定的类型

缺点:方法会在每个实例上都重新创建一遍遍

3.原型

function Person(){}Person.prototype.name="小米";Person.prototype.showName=function(){alert(this.name);}var p1=new Person();p1.showName();

登录后复制

优点:属性和方法定义在原型上 ,故每个实例可以共享属性和方法

缺点:实例的属性不能私有化

4.混合式(构造函数+原型)

function CreatePerson(name){  this.name=name;}  Create.prototype.showName=function(){    alert(this.name);  }    var p1=new CreatePerson('小米');    p1.showName();   var p2=new CreatePerson('小米');    p2.showName();  alert(p1.showName==p2.showName);//true;原因:都是在原型下面,在内存中只存在一份,地址相同

登录后复制

通过构造函数来定义属性,原型来定义方法和共享的属性。

5.字面量

person={  name:"小米",  age:23};

登录后复制

相关推荐:

JS创建对象的写法示例

多种创建js对象的方法详细讲述

以上就是js创建对象的方式及其特点的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2745893.html

(0)
上一篇 2025年3月8日 03:50:41
下一篇 2025年2月18日 05:43:54

AD推荐 黄金广告位招租... 更多推荐

发表回复

登录后才能评论