Javascript 在单独的数组中返回JSON名称和值
如果我有以下JSON对象Javascript 在单独的数组中返回JSON名称和值,javascript,arrays,json,Javascript,Arrays,Json,如果我有以下JSON对象 { "ID": 100, "Name": "Sharon", "Classes":{ "Mathematics": 4, "English": 85, "Chemistry": 70, "Physics": 4, "Biology": 8,
{
"ID": 100,
"Name": "Sharon",
"Classes":{
"Mathematics": 4,
"English": 85,
"Chemistry": 70,
"Physics": 4,
"Biology": 8,
"FMathematics": 94
}
}
如何在单独的数组中返回类名及其各自的值
这里是plunker,如果使用jquery,可以执行以下操作:
var keys = []
var values = []
$.each(yourJSONObject.Classes, function(k, v){keys.push(k); values.push(v)})
然后你可以把键和值分开 这将返回一个包含所有数组的对象
var obj = JSON.Parse("Your json string");
var arrays = [];
for(var className in obj.Classes){
var value = obj.Classes[className];//Value of className
var temp = {};
temp[className] = value;
arrays.push(temp);
}
您可以使用本机js代码执行此操作,无需任何技巧:
var keys = [], values = [];
for (var key in json){ keys.push(key); values.push(json[key]); }
对象名是什么?看看你没有一个“JSON对象”。您有一个Javascript对象(文本)——或者您有一个“JSON字符串”。在您展示的示例中,它是前者。如果您真的想使用JSON,就必须使用字符串函数。因为任何JSON都是字符串。但是,您可以将JSON表示转换为使用任何语言(这里是Javascript)的对象。第一:编程语言。二(JSON):用于数据交换和存储的字符串格式,独立于编程语言。无需使用
JQuery
为此,您可以在原生js中使用常规for循环…我尝试了您的答案,取得了一些成功课程数组还可以,我似乎无法获得值数组中每个类的分数。看看@AnthonyAkpan很乐意帮忙^_^