Javascript 结果不';在计算字符串数组中的所有出现次数后,不显示
我有一个文本字符串,我使用split将其作为一个数组,我想计算每个单词出现的次数,但我看不到任何错误,但它在我的HTML中没有显示任何内容。这就是我想要实现的Javascript 结果不';在计算字符串数组中的所有出现次数后,不显示,javascript,arrays,json,Javascript,Arrays,Json,我有一个文本字符串,我使用split将其作为一个数组,我想计算每个单词出现的次数,但我看不到任何错误,但它在我的HTML中没有显示任何内容。这就是我想要实现的 [{"name":"you","data":[2]}, {"name":"it","data":[2]}, {"name":"that","data":[2]}, {"name":"to","data":[3]}, {"name":"strength","data":[2]}] 这是我的javascript代码 var counts =
[{"name":"you","data":[2]},
{"name":"it","data":[2]},
{"name":"that","data":[2]},
{"name":"to","data":[3]},
{"name":"strength","data":[2]}]
这是我的javascript代码
var counts = [];
var result = {};
var stemmed = "Example Do you really think it is weakness that yields to temptation I tell you that there are terrible temptations which it requires strength strength and courage to yield to Oscar Wilde";
var splitStemmed = stemmed.split(" ");
for(var i = 0; i < splitStemmed.length; i++)
{
for(var j = 0; j < splitStemmed.length; j++)
{
if(splitStemmed[i])
{
if(result[splitStemmed[j]])
result[splitStemmed[j]].data[0]++;
else
{
result[splitStemmed[j]] = {name:splitStemmed[j], data:[1]};
counts.push(result[splitStemmed[j]]);
}
}
}
}
$("#show").html(counts);
var计数=[];
var result={};
var stemed=“例如,你真的认为屈服于诱惑的是弱点吗?我告诉你,有一些可怕的诱惑需要力量和勇气才能屈服于奥斯卡·王尔德”;
var splitstemed=stemed.split(“”);
对于(var i=0;i
另一种方法:
var stemmed = "Example Do you really think it is weakness that yields to temptation I tell you that there are terrible temptations which it requires strength strength and courage to yield to Oscar Wilde";
var splitStemmed = stemmed.split(" ");
var hash = {};
for (var i in splitStemmed)
{
var key = splitStemmed[i];
if (!hash[key]) hash[key] = 0;
hash[key]++;
}
for (var word in hash)
{
console.log('word: ' + word + ' count: ' + hash[word]);
}
请试试这个
var counts = [];
var result = {};
var stemmed = "Example Do you really think it is weakness that yields to temptation I tell you that there are terrible temptations which it requires strength strength and courage to yield to Oscar Wilde";
var splitStemmed = stemmed.split(" ");
var resuenter code herelt={};
for(var i=0; i< splitStemmed.length; i++)
{
if(result[splitStemmed[i]]==undefined){
result[splitStemmed[i]]=1;
}else{
result[splitStemmed[i]]=result[splitStemmed[i]]+1;
}
}
$("#show").html(JSON.stringify(result))
var计数=[];
var result={};
var stemed=“例如,你真的认为屈服于诱惑的是弱点吗?我告诉你,有一些可怕的诱惑需要力量和勇气才能屈服于奥斯卡·王尔德”;
var splitstemed=stemed.split(“”);
var在此处重新输入代码lt={};
对于(var i=0;i
签出这把小提琴-->
我想说使用forEach会更容易,因为它不涉及所有不同的参数,比如循环的标准参数
也可能不需要数组作为数据值。下面是一个例子结构小提琴以上的输出
{
"example": 1,
"do": 1,
"you": 2,
"really": 1,
"think": 1,
"it": 2,
"is": 1,
"weakness": 1,
"that": 2,
"yields": 1,
"to": 3,
"temptation": 1,
"i": 1,
"tell": 1,
"there": 1,
"are": 1,
"terrible": 1,
"temptations": 1,
"which": 1,
"requires": 1,
"strength": 2,
"and": 1,
"courage": 1,
"yield": 1,
"oscar": 1,
"wilde": 1
}
这个数据结构与您发布的数据结构一样容易迭代,但是如果您需要这个数据结构,可以根据需要调整上面的解决方案