javascript原型

javascript里面没有类的概念,对象由对象实例化。

使用原型初始化对象:

function Person(){

Person.prototype.name='sophie';

Person.prototype.showName=function(){

console.log(this.name);

};

 var person=new Person();

person.showName();

}
使用对象字面量初始化对象:(缺点:每创建一个新的对象都需要写出完整的定义语句)

var person={

name:"sophie",

shoeNme:function(){

console.log(this.name);

}

};

构造函数创建对象:(配合new表达式使用)

function Person(){

this.name="sophie";

this.showNme=function(){

console.log(this.name);

};

}

var person=new Person();//这句话分解为四句:var person={};person._proto_=person.prototype;Person.call(person);return person;

构造函数内定义的属性继承方式:

1.子对象需要需要显式调用父对象才能继承构造函数内定义的属性;

2.构造函数内定义的任何属性,包括函数在内都会被重复创建,同一个构造函数产生的两个对象不共享实例;

3.构造函数内定义的函数有运行时闭包的开销,因为构造函数内的局部变量对其中定义的函数是可见的。

原文地址:https://www.cnblogs.com/sophiehui/p/6602463.html