1.首先创建一个字符串, let str = "asdsaqweasdasdffj";
let str = "asdsaqweasdasdffj";
核心思路:
1.首先,通过 split("") 方法将给定的字符串 str 分割成一个字符数组,每个元素都是字符串中的一个字符。
2.接着,使用 reduce 方法对字符数组进行遍历和累计操作。
3.在每次遍历中,首先判断累计变量 obj 的构造函数是否为 Object,如果不是,则将 obj 重置为空对象。
4.然后,检查 obj 对象中是否已经存在以当前字符 item 为属性名的属性。如果该属性已存在,则将该属性值加1;否则,在 obj 对象中新增一个以 item 为属性名的属性,并将其初始值设为1。
5.最后,返回累计结果 obj。
//判断出现次数 let num = str.split("").reduce((obj, item, index) => { if (obj.constructor != Object) obj = {}; obj[item] ? obj[item]++ : (obj[item] = 1); return obj; }); console.log(num);