大家好我真的陷入了这种情况:S我有一个带有随机句子的本地.txt文件,我的程序意味着:
我发现执行第三个问题很困难。我的代码是......
的JavaScript
lengths.forEach((leng) => {
counter[leng] = counter[leng] || 0;
counter[leng]++;
});
$("#display_File_most").text(counter);
}
}
r.readAsText(f);
}
});
</script>
我已经用这个问题寻求帮助,但没有运气 - Using Javascript to find most common words in string?
我相信我必须将句子存储在数组中并循环遍历它,不确定这是否是正确的步骤,或者是否有更快的方法找到解决方案,所以我问你们。
感谢您的时间和我希望我的问题有道理:)
答案 0 :(得分:1)
3.制作句子中每个长度的单词列表(未完成)。
基于这个问题,这不是解决方案吗?
var words = str.split(" ");
var count = {};
for (var i = 0; i<words.length; i++){
count[words[i].length] = (count [words[i].length] || 0) + 1
}
答案 1 :(得分:1)
如果您认为您的解决方案是完成分离的任务,那么找到它真的很简单。在这里你可以将它们放在一起:
将单词转换为数组。你的胆量是正确的:))
var source = "Hello world & good morning. The date is 18/09/2018";
var words = source.split(' ');
下一步是找出每个单词的长度
var lengths = words.map(function(word) {
return word.length;
});
最后,最复杂的部分是获取每个长度的出现次数。一个想法是使用一个对象来使用键/值,其中键是长度,值是它的计数(来源:https://stackoverflow.com/a/10541220/1505348)
现在,您将在counter
对象下看到每个字长以及源字符串上的重复数。
var source = "Hello world & good morning. The date is 18/09/2018";
var words = source.split(' ');
var lengths = words.map(function(word) {
return word.length;
});
var counter = {};
lengths.forEach((leng) => {
counter[leng] = counter[leng] || 0;
counter[leng]++;
});
console.log(counter);