我正在尝试在JavaScript上实现一段代码,以分析给定字符串中的单词/频率。我的目标是返回以下数组:
[{text: firstword, size:3 },{text:secondword , size:5 },{text: nword, size: 1},...]
我实现了以下代码,但是我内存不足,所以我不知道它是否正常。
function wordFrequency(txt){
var wordArray = txt.split(/[ .?!,*'"]/);
var newArray = [];
$.each(wordArray, function (ix, word) {
if (newArray.length >= 1){
newArray.some(function (w){
if (w.text === word){
w.size++;
} else {
newArray.push({text: word, size: 1});
}
});
} else {
newArray.push({text: word, size: 1});
}
});
return newArray;
}