我正在努力弄清楚如何以我想要的方式链接对象。
让我们举例如下:
var s = function(){
this.text = {
hi: function(){
//do something
return new s().text;
}
};
return null;
};
var a = new s();
让我们说//do something
在哪里,你有某种代码可以做某事(返回一些东西)。您希望返回该结果,同时仍然允许人们将更多函数链接到结果。
然而,如果我会回复一些东西,比如:
console.log(a.text.hi().hi());
因为最后一次返回(new s().text
)不会被返回,因为你不能返回两件事,我明白了。
我的主要问题是,是否可以进行链接,可以将另一个函数链接到前一个函数的结果,但如果没有函数链接到前一个函数,则返回结果。
我找到的唯一解决方案是使用如下语法:
a.text.hi().hi().end;
为了指示代码返回最后的函数结果。但是,我觉得这不太实用,我希望有更好的方法来完成我想要做的事情。