最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

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

来源:懂视网 责编:小OO 时间:2020-11-27 19:33:29
文档

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.构造函数;
推荐度:
导读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.构造函数;

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创建对象的方式及其特点

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.构造函数;
推荐度:
标签: 方法 特征 特点
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top