var MyFunction = function () {
this.myVar = 'something';
var myVar = 'else';
};
上述两者的优点和缺点是什么,我看到它们被使用了。
答案 0 :(得分:0)
主要区别如下:
var myFunc = function(){
this.x = 2; // You want this to be used outside of the declaration
}
var y = new MyFunc();
console.log(y.x); // 2
var myFunc2 = function(){
var x = 3; // you only want to use it inside this function
}
var z = new MyFunc2();
console.log(y.x); // undefined
所以这个。变量将是可访问的并且var不会。
答案 1 :(得分:0)
如果要表明它是一个充当MyFunction的属性的变量,请使用this.myVar。
考虑:
var MyFunction = function () {
this.myVar = 'something';
var myVar2 = 'else';
};
然后
myF = new MyFunction()
请注意,您现在可以访问myF.myVar(作为属性),但不能访问myVar2。