如何从构造函数中返回构造函数的对象
问题描述:
如何从构造函数中的构造函数返回对象?如何从构造函数中返回构造函数的对象
function consFunc() {
this.flag = 'someFlag';
this.pol = 'somePole';
}
consFunc.prototype.foo = function(){
console.log(this.flag);
}
var obj = new consFunc();
obj.foo();
这是我平时做对象从构造函数。我怎样才能从构造函数中返回对象,所以我不需要写var obj = new consFunc();
我只是简单地为我的需要调用obj.foo();
,这有可能吗?
答
你可以换你的构造在另一个函数,并从该函数返回new consFunc();
:
function obj() {
function consFunc() {
this.flag = 'someFlag';
this.pol = 'somePole';
}
consFunc.prototype.foo = function() {
console.log(this.flag);
}
return new consFunc();
}
// now use it
obj().foo()
答
如果您需要某种单身人士:
var obj = (function(){
var flag = 'someFlag';
var pol = 'somePole';
function foo(){
console.log(flag);
}
return {
foo: foo
};
})();
obj.foo();
不清楚你在问什么。如果它不是'new consFunc();',那么'obj'会是什么? – charlietfl
这只是例如 – Mohsin
这并不能解释太多。 – charlietfl