因此,我想为Node创建一个库程序包,该程序包选择一些元素并将其传递给下一个函数。不过,您可以将其用于其他相关功能。
这是我想要的例子。
Selector(element).Action(options, callback);
实际上,就是这样;
cont arr = [1, 2, 3];
Q(arr).insert(4, function (newArr, lengthIndex) {
console.log(newArr); // => [1,2,3,4]
console.log(lengthIndex); // => 4
});
因此,我想知道如何在Action()
函数内部制作Selector
函数。我还希望仍然可以使用Q(element)
为此返回一个自定义对象。我当时想返回一个带有函数和自定义内容的对象,但是我不确定。
const Q = function (Element) {
return {
type: typeof Element,
length: Element.length,
// Functions
insert: function (Attribute, Callback) {
Element.push(Attribute);
Callback(Element, Element.length);
return Element;
}
};
}
我想知道是否有更好的方法可以做到这一点。该库将具有增强的功能和有关特定内容的信息,还将具有HTTP请求。我要使用jQuery样式的程序包,想知道是否还有另一种方法。
〜Q
答案 0 :(得分:0)
它调用chaining
。最好的方法是将类与必需的方法一起使用,这将返回其自身的return this
,或在调用的方法中创建新的一个/另一个类的实例,例如return new Action(someData)
。如果您不想从外部使用类,则可以创建函数包装器来创建实例并返回它:
class Selection{
constructor(args){
this.args = args;
}
doWork(){
console.log(this.args);
return this;
}
}
function select(...args){
return new Selection(args);
}
select("something").doWork()