我很难弄清楚如何以我想要的方式链接对象。
举个例子:
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());
不再起作用,因为最后一个 return ( new s().text
) 不会被返回,因为你不能返回两件事,我明白这一点。
我的主要问题是,是否可以进行链接,您可以将另一个函数链接到前一个函数的结果,但如果没有函数链接到前一个函数,则返回结果。
我发现的唯一解决方案是使用如下语法:
a.text.hi().hi().end;
为了指示代码返回最后一个函数的结果。但是,我觉得这不是很实用,我希望有更好的方法来完成我想做的事情。