Javascript 如何将一个对象数组插入另一个数组?
我从Api获得的数据是一个数组,如下所示:Javascript 如何将一个对象数组插入另一个数组?,javascript,arrays,echarts,Javascript,Arrays,Echarts,我从Api获得的数据是一个数组,如下所示: var arrayX = [{key: "GET", doc_count: 12}, {key: "POST", doc_count: 381}] " .... data: [{value: 'Doc_count' information of 'POST' key information will come in this field, name: 'POST'}, {value: put, name: 'PUT'},
var arrayX = [{key: "GET", doc_count: 12},
{key: "POST", doc_count: 381}]
" ....
data: [{value: 'Doc_count' information of 'POST' key information will come in this field, name: 'POST'},
{value: put, name: 'PUT'},
{value: get, name: 'GET'}]
..."
我想在图形中显示此键“key”和“doc_cont”的值。
图表格式如下:
var arrayX = [{key: "GET", doc_count: 12},
{key: "POST", doc_count: 381}]
" ....
data: [{value: 'Doc_count' information of 'POST' key information will come in this field, name: 'POST'},
{value: put, name: 'PUT'},
{value: get, name: 'GET'}]
..."
当我想给“arrayX”中的“doc_count”赋值时,返回“undefined”
for (var i = 0; i <= arrayX.length; i++) {
if (arrayX[i].key == 'POST') {
var post = arrayX[i].doc_count;
}
else if (arrayX[i].key == 'PUT') {
var put = arrayX[i].doc_count;
}
else if (arrayX[i].key == 'GET') {
var get = arrayX[i].doc_count;
}
}
对于(var i=0;i您已经接近了,这里唯一的问题是您的循环条件
更改此项:
for(var i=0;i据我所知,您希望转换以下结构的数组:
[{key: "GET", doc_count: 12}, {key: "POST", doc_count: 381}]
进入:
[{name: "GET", value: 12}, {name: "POST", value: 381}]
为此,Array.prototype.map()
可能是更具描述性的方法。
官员说:
map()方法创建一个新数组,其结果是对调用数组中的每个元素调用提供的函数
var arrayX=[{
关键:“获取”,
医生人数:12
}, {
关键:“帖子”,
文件数量:381
}]
var chartData=arrayX.map((项目)=>{
返回{
名称:item.key,
值:item.doc\u count
}
});
console.log(图表数据)
console.log(arrayX)
此感谢您的帮助。此代码通过删除“=”符号来工作。