我在非浏览器环境(Titanium Studio)中有以下代码,我注意到 result1 和 result2 都可以工作,返回相同的结果,并且是相同的类型(对象)。
您能否解释一下它们是否有任何不同以及它们有何不同?
在我的情况下,在 name1 中没有对本地上下文的引用(那里没有“this”,只有局部变量),我试图弄清楚当我有一个像下面这样的情况。
var name1 = function(some_arg){
// some stuff
return result; // returns an object
}
var result1 = name1('some_value');
var result2 = new name1('some_value');
typeof(result1); // returns object
typeof(result2); // returns object
谢谢!
在下面编辑:原始问题已得到解答,我现在正在寻找相关内容的澄清。
与以下评论相关的代码:
function Name1 (name){
this.name = name;
}
var version1 = new Name1('joey');
version1.name;
var Name2 = function(name){
this.name = name
}
var version2 = new Name2('joey');
version2.name;
谢谢!