构造函数就像javascript中的普通函数一样。
function Vehicle (param1, param2){
this.param1 = param1;
this.param2 = param2;
}
为什么我们需要使用新的运算符
来调用它们1) var car = new Vehicle ('abc' , 'def');
为什么不喜欢这样并明确地返回'this'?
2) var car = Vehicle('abc' , 'def'); //Like a simple function call.
2)未创建对象。 和car.param1给出undefined。
“新”在幕后做的是什么?
答案 0 :(得分:0)
使用new调用函数将从此
转换您的函数function Vehicle (param1, param2){
this.param1 = param1;
this.param2 = param2;
}
到这个
function Vehicle (param1, param2){
var this={};
this.param1 = param1;
this.param2 = param2;
return this;
}
2)将创建对象。和car.param1不会来定义。如果你写这样的功能
function Vehicle (param1, param2){
var obj={};
this.param1 = param1;
this.param2 = param2;
return obj;
}