JavaScript: разбивать и подсчитывать слова в строке - PullRequest
1 голос
/ 27 мая 2020

Например, у меня есть строка ввода со значением «тестовый тест в строке».

Мне нужно выполнить функцию, которая будет разбивать каждое слово и подсчитывать каждое, сколько из них содержится во вводе строки.

Результат должен быть таким: test: 2, in: 1, string: 1

Заранее большое спасибо за подсказку.

Ответы [ 3 ]

2 голосов
/ 27 мая 2020

после разделения строки вы можете использовать функцию сокращения для подсчета частоты каждого слова

const str = "test test in string";

const result = str.split(' ').reduce((acc, curr) => {
  acc[curr] = acc[curr] ? ++acc[curr] : 1;
  return acc;
}, {})

console.log(result);
0 голосов
/ 27 мая 2020

Вы можете это сделать.

var str = "test test test in string";
var res = str.split(" ");
  
var result = {};
  res.forEach(function(x) {
  result[x] = (result[x] || 0) + 1;
});
console.log(result)
0 голосов
/ 27 мая 2020

Если круто с loda sh, то:

_.countBy('test test in string'.split(' '))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...