Javascript 结果不';在计算字符串数组中的所有出现次数后,不显示

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 =

我有一个文本字符串,我使用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 = [];
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
}
这个数据结构与您发布的数据结构一样容易迭代,但是如果您需要这个数据结构,可以根据需要调整上面的解决方案