「跟着渡一学前端」Lodash——手写countBy函数

学习资源#

完整代码#

function countBy(collection, iteratee) {
  const result = {};
  for (const item of collection) {
    const key = iteratee(item);
    result[key] ? result[key]++ : (result[key] = 1);
  }
  return result;
}

代码详解#

  • 参数了解——collection 集合,iteratee迭代函数用于生成键。
  • 考虑如何遍历集合:因为collection可能为数组也可能为对象——所以使用for-of遍历。
  • 考虑键名生成——使用迭代函数生成键。
  • 进行遍历统计——若有值则累加,若无值则初始化为1。
posted @   lao-jiawei  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示
主题色彩