JavaScript原型
在JS里面,我们定义函数可以写为
var A= function() {
this.test= 2;
};
其实可以理解为A是
function() {
this.test= 2;
};创建的一个对象,这样也便于理解JA里面的函数即为对象的概念,那么在上面的例子中A的构造函数便是
function() {
this.test= 2;
};这么一个东西,我们先不急着给这么一个东西一个名称,否则更容易搞混,然后A的prototype就是Function对象,如果我们用B=A();构造了B这样一个对象那么B的
prototype就是A,或许我们将
function() {
this.test= 2;
};叫做函数其他的都叫做对象更加容易理解吧。
要记住原型也是对象,B的原型A通过
function() {
this.test= 2;
};也就是我们称的函数构造了B那么A是通过什么构造的呢?肯定不是A,而是Function对象,Function通过函数function(){}构造了A,当然你也可以通过给A的原型添加属性,那么B自然也获得了这些属性,通过给A添加属性B会不会继承呢?(没试过读者可以自行实验)