计算一个单词的重复次数

时间:2017-05-22 15:04:00

标签: javascript string object

我正在编写一个名为" countWords"。

的函数

给出一个字符串," countWords"返回一个对象,其中每个键是给定字符串中的一个单词,其值是该单词在给定字符串中出现的次数。

注意:
*如果给出一个空字符串,它应该返回一个空对象。

function countWords(str) {
  var obj = {};

  var split = str.split(" ");

  return split;
}

var output = countWords('ask a bunch get a bunch'); 
console.log(output); // --> MUST RETURN {ask: 1, a: 2, bunch: 2, get: 1}

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我不会给你完成代码(这不是作业的意义),但我试图让你自己解决问题。

到目前为止,你已经有了一系列文字。

接下来让我们声明一个我们稍后可以分配属性的对象。

然后我们将迭代我们的数组,如果数组元素在我们的对象中不存在作为键( if(!obj [array [i]]))那么就创建一个新的property,具有元素名称和值1.( obj [array [i] = 1;

如果元素是该对象的键,则让我们增加它的值。 ( obj [array [i]] ++;

然后返回对象。

答案 1 :(得分:0)

所以你可以像这样使用javascript地图:

var myMap = new Map();
myMap.set(keyString, count);

并访问键的值,如下所示:

myMap.get(keyString);

有关详细信息,请参阅此处https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Map