使用jquery或javascript从json变量数据获取值
json输出类似于:使用jquery或javascript从json变量数据获取值,javascript,jquery,json,Javascript,Jquery,Json,json输出类似于: {“苹果”:3,“另一个”:1,“更多”:5,“沃尔沃”:1,“奥迪”:1,“福特”:1} 我需要对每个接收到的值进行追加。它们旁边的数字是它们存在的次数 我知道它可能是带有“for each”值的,但是,由于json响应的值和键是可变的,所以我很难找到实现方法 我希望追加顺序取决于数字的大小。如果较大,请在顶部打印,以此类推 例如: <div id="values"> <p>The value "more" is repeated 5 time
{“苹果”:3,“另一个”:1,“更多”:5,“沃尔沃”:1,“奥迪”:1,“福特”:1}
我需要对每个接收到的值进行追加。它们旁边的数字是它们存在的次数
我知道它可能是带有“for each”值的,但是,由于json响应的值和键是可变的,所以我很难找到实现方法
我希望追加顺序取决于数字的大小。如果较大,请在顶部打印,以此类推
例如:
<div id="values">
<p>The value "more" is repeated 5 time(s).</p>
<p>The value "apple" is repeated 3 time(s).</p>
<p>The value "another" is repeated 1 time(s).</p>
...
</div>
编辑:
首先-将对象转换为有效数组:
var data = {"apple":3,"another":1,"more":5,"volvo":1,"audi":1,"ford":1};
var arr = [];
for (var key in data)
{
arr.push({ name: key, value: data[key] });
}
然后。。。。将该数组与jQuery、angular等一起使用。。。来填充元素
享受:)首先-将对象转换为有效数组:
var data = {"apple":3,"another":1,"more":5,"volvo":1,"audi":1,"ford":1};
var arr = [];
for (var key in data)
{
arr.push({ name: key, value: data[key] });
}
然后。。。。将该数组与jQuery、angular等一起使用。。。来填充元素
享受:)像这样。使用jquery的
$循环遍历对象集。然后使用append
方法将html附加到div中
var obj={“苹果”:3,“另一个”:1,“更多”:5,“沃尔沃”:1,“奥迪”:1,“福特”:1};
text=“”;
$。每个(对象、函数(索引、元素){
text+=“值“+索引+”在“+元素+”时间内重复。”;
});
$(“#值”)。追加(文本)代码>
像这样。使用jquery的$循环遍历对象集。然后使用append
方法将html附加到div中
var obj={“苹果”:3,“另一个”:1,“更多”:5,“沃尔沃”:1,“奥迪”:1,“福特”:1};
text=“”;
$。每个(对象、函数(索引、元素){
text+=“值“+索引+”在“+元素+”时间内重复。”;
});
$(“#值”)。追加(文本)代码>
如上所述,首先将对象转换为数组
var data = {"apple":3,"another":1,"more":5,"volvo":1,"audi":1,"ford":1};
function sortByValue (data){
var dataArray=[];
for(var key in data){
dataArray.push({name:key ,value :data[key]});
}
dataArray.sort(function(a,b){return b.value- a.value}); //sort it in descreasing order
return dataArray;
}
var text="";
var objArray = sortByValue(data);
$.each(objArray,function(index,object){
text +=" <p>The value " +object.name+ " is repeated "+ object.value + " time(s).</p>";
});
$("#values").append(text)
var data={“苹果”:3,“另一个”:1,“更多”:5,“沃尔沃”:1,“奥迪”:1,“福特”:1};
函数sortByValue(数据){
var dataArray=[];
for(var输入数据){
push({name:key,value:data[key]});
}
sort(函数(a,b){返回b.value-a.value});//按递减顺序排序
返回数据数组;
}
var text=“”;
var objArray=sortByValue(数据);
$.each(objArray,函数(索引,对象){
text+=“值“+object.name+”重复“+object.value+”时间。”;
});
$(“#值”)。追加(文本)
如上所述,首先将对象转换为数组
var data = {"apple":3,"another":1,"more":5,"volvo":1,"audi":1,"ford":1};
function sortByValue (data){
var dataArray=[];
for(var key in data){
dataArray.push({name:key ,value :data[key]});
}
dataArray.sort(function(a,b){return b.value- a.value}); //sort it in descreasing order
return dataArray;
}
var text="";
var objArray = sortByValue(data);
$.each(objArray,function(index,object){
text +=" <p>The value " +object.name+ " is repeated "+ object.value + " time(s).</p>";
});
$("#values").append(text)
var data={“苹果”:3,“另一个”:1,“更多”:5,“沃尔沃”:1,“奥迪”:1,“福特”:1};
函数sortByValue(数据){
var dataArray=[];
for(var输入数据){
push({name:key,value:data[key]});
}
sort(函数(a,b){返回b.value-a.value});//按递减顺序排序
返回数据数组;
}
var text=“”;
var objArray=sortByValue(数据);
$.each(objArray,函数(索引,对象){
text+=“值“+object.name+”重复“+object.value+”时间。”;
});
$(“#值”)。追加(文本)
是家庭作业吗?你试过什么了吗?你搜索过了吗?你只需要循环一个对象:它是家庭作业吗?你试过什么了吗?你搜索过了吗?你只需要在一个对象中循环:首先将对象中的每个数字放入数组。然后排序。嘿,我一直在尝试,我现在可以对它们排序,但我不能追加。。。这是JSFIDLE,可能是一些我看不到的明显的东西。。。首先将你的对象中的每个数字放入数组。然后排序。嘿,我一直在尝试,我现在可以排序,但我不能追加。。。这是JSFIDLE,可能是一些我看不到的明显的东西@QuiqueOsunaGarcía将var ObjArray替换为var ObjArray,它将work@QuiqueOsunaGarcía用var-ObjArray替换var-ObjArray,它就会工作