2016-07-05 7 views
0

Читаю данные на страницу, которая выглядит следующим образом:Javascript/Json преобразовать формат данных

{"cars":0,"bikes":"1"} 

Для того, чтобы получить графики, работающие в моей странице, мне нужно, чтобы преобразовать его в нечто вроде этого:

[{"key":"cars","value":0},{"key":"bikes","value":1}] 

Каким будет наилучший способ преобразования этих данных, так как эти данные могут увеличиваться в размере.

+1

Эта операция может быть описана как: «превращая объект/словарь в массив/последовательности пар ключ-значение». Это можно сделать несколькими способами, большинство C-forward - с помощью in..in (над ключами в объекте) и Array.push. – user2864740

+0

Примеры: http://stackoverflow.com/questions/25627889/converting-json-name-value-to-array-with-object-literals?lq=1, http://stackoverflow.com/questions/34240678/converting -json-object-to-js-key-value-pairs-array? rq = 1, http://stackoverflow.com/questions/14615669/convert-objects-properties-and-values-to-array-ofkey -value-pair (кроме строки не строятся) – user2864740

ответ

2

Вы можете использовать map() и Object.keys() сделать это

var obj = {"cars":0,"bikes":"1"}; 
 
var result = Object.keys(obj).map(function(e) { 
 
    return {key: e, value: obj[e]} 
 
}); 
 

 
console.log(result)

Смежные вопросы