我正在尝试构建两个函数,就像jQuery函数一样工作,例如:jQuery(' select')。val();
这有效:
function func(a) {
console.log(1);
return a;
}
func.sub = function(n) {
console.log(2);
}
func.sub(2);
但这并不是:
function func(a) {
console.log(1);
return a;
}
func.sub = function(n) {
console.log(2);
//return func result[n];
}
func([1,2,3]).sub(2);
如何使第二个代码工作并在sub()上读取func()结果?
答案 0 :(得分:1)
您需要func
返回一个方法为sub
的对象。
function Subbable(x) {
this.value = x;
}
Subbable.prototype.sub = function(b) {
return this.value - b;
}
function func(a) {
return new Subbable(a);
}
func(10).sub(2)
// 8
jQuery的$(...)
通常返回一个jQuery对象,该对象包含所选节点的集合,其原型具有.attr
和.css
等所有好东西。