Javascript 如何使用jquery将对象转换为数组

Javascript 如何使用jquery将对象转换为数组,javascript,jquery,arrays,Javascript,Jquery,Arrays,我使用jquery$.get从json文件创建了以下对象。 console.log(数组) 我正在尝试将每个对象转换为这种类型的数组['喀麦隆',58],'德国',58] 我尝试使用jquery$.makeArray var array = $.makeArray(emObj); 但这仍然返回一个对象。您可以解决这个问题,而无需使用任何库依赖项,如jquery var-arr=[{ 国家:“喀麦隆”, 雇用人数:“58” }, { 国家:“德国”, 雇用人数:“50” }]; 函数计算(ar

我使用jquery$.get从json文件创建了以下对象。 console.log(数组)

我正在尝试将每个对象转换为这种类型的数组['喀麦隆',58],'德国',58]

我尝试使用jquery$.makeArray

var array = $.makeArray(emObj);

但这仍然返回一个对象。

您可以解决这个问题,而无需使用任何库依赖项,如jquery

var-arr=[{
国家:“喀麦隆”,
雇用人数:“58”
}, {
国家:“德国”,
雇用人数:“50”
}];
函数计算(arr){
var i,
伦恩,
res=[];
对于(i=0,len=arr.length;i控制台日志(计算(arr))您无需使用任何库依赖项(如jquery)即可解决此问题

var-arr=[{
国家:“喀麦隆”,
雇用人数:“58”
}, {
国家:“德国”,
雇用人数:“50”
}];
函数计算(arr){
var i,
伦恩,
res=[];
对于(i=0,len=arr.length;i控制台日志(计算(arr))如果我理解正确,您的输入是一个对象数组,您想要的输出是一个数组数组。使用jQuery很容易,但使用jQuery的唯一原因是如果您支持IE<9,因为所有现代浏览器都支持本机方法:

var输入={
“国家”:[
{“国家”:“澳大利亚”,“雇用人数”:22},
{“国家”:“喀麦隆”,“雇用人数”:50},
{“国家”:“德国”,“雇用人数”:13}
]
};
var输出=输入.countries.map(函数(v){
返回[v.国家,v.雇佣人数];
});
var outputWithjQuery=$.map(input.countries,函数(v){
返回[[v.国家,v.雇佣人数];
});
控制台日志(输出);
log(outputWithjQuery)

如果我理解正确,您的输入是一个对象数组,您想要的输出是一个数组数组。使用jQuery很容易,但使用jQuery的唯一原因是如果您支持IE<9,因为所有现代浏览器都支持本机方法:

var输入={
“国家”:[
{“国家”:“澳大利亚”,“雇用人数”:22},
{“国家”:“喀麦隆”,“雇用人数”:50},
{“国家”:“德国”,“雇用人数”:13}
]
};
var输出=输入.countries.map(函数(v){
返回[v.国家,v.雇佣人数];
});
var outputWithjQuery=$.map(input.countries,函数(v){
返回[[v.国家,v.雇佣人数];
});
控制台日志(输出);
log(outputWithjQuery)

@nnnnnn键入错误。我纠正了!您能展示一下原始JSON的示例吗?(是不是像
[{“国家”:“喀麦隆”,“雇用计数”:50},{“国家”:“德国”,“雇用计数”:58}]
?)控制台记录的版本有点难读。是的,这就是原版的{
“国家”:[{“国家”:“喀麦隆”,“雇用计数”:50},}
@nnnnnnnn键入错误。我纠正了!您能展示一下原始JSON的示例吗?(是不是像
[{“国家”:“喀麦隆”,“雇用计数”:50},{“国家”:“德国”,“雇用计数”:58}]
?)控制台记录的版本有点难读。是的,这就是原版看起来像的{
“国家”:[{“国家”:“喀麦隆”,“雇用计数”:50},
@Obasi这就是你要找的吗?如果您需要一些更改,请告诉我。注意:OP输入中的数字实际上是数字,因此无需调用
Number()
。在程序的其余部分,如果我连接另一个字符串,请说“50”+“28”。如果没有编号,则为“5028”。只是想确保这不会发生。还是可选的DBut…将值设为数字并不意味着如果将其与字符串连接在一起,它就不会被强制回字符串<代码>编号(“50”)+“28”
“5028”
。在任何情况下,正如我前面所说,OP的值已经是数字,而不是字符串。@Obasi这就是您要找的吗?如果您需要一些更改,请告诉我。注意:OP输入中的数字实际上是数字,因此无需调用
Number()
。在程序的其余部分,如果我连接另一个字符串,请说“50”+“28”。如果没有编号,则为“5028”。只是想确保这不会发生。还是可选的DBut…将值设为数字并不意味着如果将其与字符串连接在一起,它就不会被强制回字符串<代码>编号(“50”)+“28”
“5028”
。在任何情况下,正如我之前所说,OP的值已经是数字,而不是字符串。非常好用。谢谢:)很好用。谢谢:)
var array = $.makeArray(emObj);
res.push([elem['country'], Number(elem['employ_count'])]);