javascript prototype

prototype 是什么含义? javascript中的每个对象都有prototype属性,只有构造器才具有prototype属性。Javascript中对象的prototype属性的解释是:返回对象类型原型的引用。

构造器包括:

1.Object
2.Function
3.Array
4.Date
5.String

举例1:

//打印结果:2:[1,2,1]

举例2:

举例3:

function Person(name) {
  this.name = name;
}
Person.prototype.getName = function() {
  return this.name;
};
var p = new Person("aaa"); //为什么要用new。

说明:A的prototype为B的一个实例,可以理解A将B中的方法和属性全部克隆了一遍。A能使用B的方法和属性。

 

new做了哪些事情?
 当代码var p = new Person()执行时,new 做了如下几件事情:

  1. 创建一个空白对象
  2. 创建一个指向Person.prototype的指针
  3. 将这个对象通过this关键字传递到构造函数中并执行构造函数。

 参考文章:

http://www.cnblogs.com/yjf512/archive/2011/06/03/2071914.html

http://www.cnblogs.com/lwzz/archive/2013/03/03/2941743.html

原文地址:https://www.cnblogs.com/babyfacer/p/6485557.html