我拥有的JSON对象
{Yana: 1, Pirelli: 2, Good Year: 1}
预期结果
series: [
{name: 'Yana', data: [1]},
{name: 'Pirelli', data: [5]},
{name: 'Good year', data: [5]}
]
答案 0 :(得分:4)
Object.entries将在这里提供帮助
var input = {"Yana": 1, "Pirelli": 2, "Good Year": 1};
var output = Object.entries(input).map(([name, v]) => ({name, data:[v]}));
console.log (output);
答案 1 :(得分:0)
如何?
const object = {"Yana": 1, "Pirelli": 2, "Good Year": 1};
Object.keys(object).map(key => {
return {name: key, data: [object[key]]};
})
Object.keys
从object
获取一个键名数组,可以使用map
对其进行迭代。这样,就可以轻松以所需的格式构造输出数组。
答案 2 :(得分:0)
您可以在<button onclick="document.body.outerHTML=document.body.outerHTML"></button>
对象中使用forEach()
中的Object.keys()
:
data
答案 3 :(得分:0)
您提供的对象不是有效的JSON对象。 JSON格式的对象将是:
{"Yana": 1, "Pirelli": 2, "Good Year": 1}
假设您在字符串中包含该字符串,那么您要做的第一件事就是将其解析为JS对象:
const jsonData = '{"Yana": 1, "Pirelli": 2, "Good Year": 1}'
const object = JSON.parse(jsonData);
// Now get all the keys from the object:
const brands = Object.keys(object);
// Finally, create a new object with the desired properties:
const result = brands.map(brand => {
return {
name: brand,
data: object[brand]
};
})