关于underscore中_.invoke的小疑问
underscore1.3.3 的_.invoke 这个function是这样的:
_.invoke = function(obj, method) {
var args = slice.call(arguments, 2);
return _.map(obj, function(value) {
return (_.isFunction(method) ? method || value : value[method]).apply(value, args);
});
};
请问下面这句代码中为什么三元运算符中要加个逻辑或的判断,有什么作用呢?是出于什么样的考虑?我去掉后好像也没发现什么错误。
return (_.isFunction(method) ? method || value : value[method]).apply(value, args);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
underscore写错了吧,这个或一点用也没有,还有可能出现value[method]不是函数的问题。所以新的underscore已经修改了这个方法的实现:
这样好多了。