如果我有一个textarea并且用户将一个段落粘贴到textarea中,是否可以在客户端使用JavaScript在输入上运行统计信息?我正在考虑使用关联数组或哈希映射,因此数组[word] - >出现次数,并逐字逐句迭代,但我不知道如何使用客户端JavaScript。
我尝试搜索JavaScript字数,但我只得到计算字总数的结果,这不是我想要的。我正在寻找的是更多地保留每个特定单词的计数。这可以在Javascript或Jquery中完成吗?如果是这样,我该怎么做呢?
答案 0 :(得分:5)
这是一种方法
// first get an array of words
var words = text.split(' ');
// use Array.prototype.reduce (for example) to
// create statistics
var statistics = words.reduce(function (stat, word) {
if (!stat[word]) stat[word] = 0;
stat[word]++;
return stat;
}, {});
更新:处理标点符号和大写/小写的小例子:http://jsfiddle.net/1pnLzv8h/1/
答案 1 :(得分:0)
像
这样的东西var arra = ['ab','pq','mn','ab','mn','ab']
function wordCount(arra,val)
{
var ob={};
var len=arra.length;
for(var k=0;k<len;k++)
{
if(ob.hasOwnProperty(arra[k]))
{
ob[arra[k]]++;
continue;
}
ob[arra[k]]=1;
}
return ob[val];
}
alert(wordCount(arra,'ab')); //output 3