Дана строка. Подсчитайте сколько раз в ней встречается каждый из ее символов
Подскажите что сделала на так?
//Дана строка. Подсчитайте сколько раз в ней встречается каждый из ее символов.
let str = 'hello',
counter = {};
for ( let elem of str ) {
if ( counter[elem] == ' ' ) {
counter[elem] =1;
} else counter[elem]++;
}
console.log(counter)
Код выдаёт:
// [object Object] { "h": null, "e": null, "l": null, "o": null }
Ответы (2 шт):
Автор решения: ksa
→ Ссылка
Дана строка. Подсчитайте сколько раз в ней встречается каждый из ее символов
Вот такой вариант можно использовать...
const str = 'hello'
const m = [...str].reduce((m, v) => {
const n = m.has(v) ? m.get(v) + 1 : 1
m.set(v, n)
return m
} , new Map())
for (let a of m) console.log(a[0], a[1])
Автор решения: Oliver Patterson
→ Ссылка
Еще вариант:
const str = "Hello";
const obj = [...str].reduce((obj, letter) =>
{
obj[letter] = (obj[letter] ?? 0) + 1;
return obj;
}, {})
console.info(obj);