几个月前我刚刚开始学习 JS,我试图了解“_.invoke”源代码中的“args”在做什么。请问有大佬能解答一下吗?
我阅读了 mdn .apply 并阅读了其他 _.invoke 源代码,但无法理解。
_.invoke = function (collection, functionOrKey, args) {
if(typeof functionOrKey === "string") {
return _.map(collection, function(item) {
return item[functionOrKey].apply(item, args);
});
}
else return _.map(collection, function(item) {
return functionOrKey.apply(item, args);
});
};
测试功能是这样的:
_.invoke(['dog', 'cat'], 'toUpperCase');
});
it('runs the specified method on each item in the array, and returns a list of results', function() {
var upperCasedStrings = _.invoke(['dog', 'cat'], 'toUpperCase');
expect(upperCasedStrings).to.eql(['DOG', 'CAT']);
在测试函数中,没有“参数”,为什么!?
HUH函数
相关分类