统计字符串里字母出现的次数

时间:2025-02-09 22:39:18

统计字符串里字母出现的次数

1. 方法一

​ 这是用遍历的方法来进行统计的,创建一个table对象,将遍历的元素值作为对象元素的key,如果对象中已有改元素,则该元素的值自增1,如果没有该元素,则该元素初始值为1。

let string = 'kapilalipak';

const table={}; 
for(let char of string) {
  table[char]=table[char]+1 || 1;
  console.log(table);
}
// 输出
> Object { k: 1 }
> Object { k: 1, a: 1 }
> Object { k: 1, a: 1, p: 1 }
> Object { k: 1, a: 1, p: 1, i: 1 }
> Object { k: 1, a: 1, p: 1, i: 1, l: 1 }
> Object { k: 1, a: 2, p: 1, i: 1, l: 1 }
> Object { k: 1, a: 2, p: 1, i: 1, l: 2 }
> Object { k: 1, a: 2, p: 1, i: 2, l: 2 }
> Object { k: 1, a: 2, p: 2, i: 2, l: 2 }
> Object { k: 1, a: 3, p: 2, i: 2, l: 2 }
> Object { k: 2, a: 3, p: 2, i: 2, l: 2 }

2. 方法二

​ 创建个Map()对象,用()来判断是否有该元素。如果指定元素存在于Map中,则返回true。其他情况返回false

​ 如果有该元素,自增1。如果没有,把该元素存进对象里然后复赋值为1。

const countMap = new Map();
  for (let i = 0; i < ; i++) {
    if ((string[i])) {
      (string[i], (string[i]) + 1);
    } else {
      (string[i], 1);
    }
  }
// 输出
Map(5) {"k" => 2, "a" => 3, "p" => 2, "i" => 2, "l" => 2}