javascript|计算一个元素在数组中出现的次数


目录

  • 前言
  • 一、需求
  • 二、思路
  • 三、代码演示
    • 1.基础写法
    • 2.进阶写法
  • 四、结果展示
  • 总结

前言 如何计算一个元素在数组中出现的次数呢?本文通过基础写法和进阶写法进行讲解,还不会的小伙伴儿快来瞅瞅~
一、需求 求以下数组中每个元素出现的次数,示例结果:{a: 1, b: 3, c: 3}
let arr = ["b", "c","b", "c","a", "b", "c"]

二、思路 通过JavaScript的内置对象Array提供的reduce方法,来计算数组内元素的出现次数。
  • reduce语法
arr.reduce(callback(accumulator, currentValue[, index[, array]])[, initialValue])
  • 步骤
    给reduce方法设置一个累计器并赋初始值为{}
    判断数组中的每一项是否存在于累计器对象中
    不存在就使用当前项作为累计器对象的键,并赋值为1
    存在就让累计器中对象的键值对的值在原先基础上+1
    每循环一次将累计器的值返回供下一次循环使用
三、代码演示 1.基础写法 代码如下(示例):
let arr = ["b", "c","b", "c","a", "b", "c"] let result = arr.reduce((acc,cur) => { if(cur in acc){acc[cur]++ } else {acc[cur] = 1 } return acc },{ }) console.log(acc)

2.进阶写法 代码如下(示例):
let arr = ["b", "c","b", "c","a", "b", "c"] let result = arr.reduce((acc,cur) => (cur in acc ? acc[cur]++ : acc[cur] = 1, acc),{ }) console.log(result)

四、结果展示 使用Vscode编辑器中自带的终端,使用node命令运行js文件查看结果。
javascript|计算一个元素在数组中出现的次数
文章图片

总结 【javascript|计算一个元素在数组中出现的次数】每天进步一点点儿,只为遇见更好的自己~

    推荐阅读