构造函数的隐式操作
构造函数构造函数的前提是加new
在逻辑最顶端加var this = {};空对象
执行以后会在末尾隐式加一个return this;
function Car(){ //此时AO里{this : {}}
var this = {};
this.name = 'BMW'; //此时AO里{this : {name : 'BWM'}}
this.height = '1400';
this.lang = '4900';
this.weight = 1000;
this.health = 100;
this.run = function(){
this.health --;
}
// return this;
}
//模拟构造函数隐式操作
function Test(name,height){
var that = {};
that.name = name;
that.height = height;
return that;
}
var one = Test('小王',180);
var one1 = Test('小李',174);
//特殊的捣乱,已经知道隐式return this那么故意返回别的
function Student(name, age, sex){
this.name = name;
this.age = age;
this.sex = sex;
this.grade = 2017;
return {}; //可以捣乱成功但是有new的情况下必须返回对象值数组function,不能返回原始值,返回原始值那么会被忽略
}
var student = new Student('zhangsan', 19 ,'male');
本人学习于http://www.duyiedu.com/
渡一教育
有问题可以评论区问