【发布时间】:2016-03-09 10:16:12
【问题描述】:
我想链接这些方法调用:
utils.map([1,2,3,4,5], function (el) { return ++el; } )
和
utils.filter(function (el) {return !el%2; }
它们单独工作正常,但以下工作不正常。如何使以下代码工作?
utils
.map([1,2,3,4,5], function (el) { return ++el; })
.filter(function (el) { return !el%2; }
这是我的utils 对象:
var utils = {
each: function (collection, iteratee){
return collection.forEach(iteratee);
},
map: function (collection, iteratee) {
return collection.map(iteratee);
},
filter: function (collection, predicate) {
return collection.filter(predicate);
},
find: function (collection, predicate) {
return collection.find(predicate);
}
}
我知道当我链接两个方法时,参数会发生变化,我必须只提供迭代对象而不是集合。如何做到这一点?
提前致谢。如果需要,我愿意解释特定概念。
【问题讨论】:
-
您找到有用的答案了吗?请发表评论,和/或接受其中一个答案。
标签: javascript methods method-chaining