我遇到一个问题,我正在使用的 API 调用发送的对象具有一个包含单个数组值的属性(下面的响应中的 keys
属性)。不幸的是,我无法使用这种格式,因为我必须遵守嵌套数组才能在单独的应用程序中使用输出值,如下所示 [[value1, value2, value3, value4],[value1, value2, value3, value4]]
。我计划提出一个单独的问题来解决嵌套数组部分,除非有人认为这是一个简单的修复(我相信我应该使用 .map
来转换对象)。
这是我的对象的格式(来自 console.log(searchQueries)
):
[ { keys: [ 'hammer' ],
clicks: 1369,
impressions: 3151,
ctr: 0.4344652491272612,
position: 1.004443033957474 },
{ keys: [ 'woodmaking' ],
clicks: 207,
impressions: 6324,
ctr: 0.03273244781783681,
position: 4.35831752055661 },
{ keys: [ 'house trends' ],
clicks: 1,
impressions: 3,
ctr: 0.3333333333333333,
position: 4.666666666666666 },
{ keys: [ 'housing' ],
clicks: 1,
impressions: 36,
ctr: 0.027777777777777776,
position: 6.472222222222222 } ]
byProperty
以上响应是从以下 for-in 循环传递的,该 API 响应数组的结果最初嵌套在对象中:
for (var prop in res){
searchQueries = res[prop];
console.log(searchQueries);
}
JSON.stringify
方法或 .toString('keys')
能否实现我正在寻找的目标?
最佳答案
如果您想将keys
从数组转换为字符串,您只需迭代数组并进行更改:
searchQueries.forEach(function (obj) { obj.keys = obj.keys[0] })
关于Javascript - 将 JSON 对象属性值从数组转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41962833/