ProgramingTip

JSON 객체를 JavaScript 배열로 변환하는 방법

bestdevel 2020. 11. 30. 19:23
반응형

JSON 객체를 JavaScript 배열로 변환하는 방법


JSON 개체 확장을 JavaScript 배열로 변환해야합니다.

이 내 JSON 개체 :

{"2013-01-21":1,"2013-01-22":7}

그리고 나는 갖고 싶다 :

var data = new google.visualization.DataTable();
data.addColumn('string', 'Topping');
data.addColumn('number', 'Slices');

data.addRows([
    ['2013-01-21', 1],
    ['2013-01-22', 7]
]);

어떻게 할 수 있습니까?


var json_data = {"2013-01-21":1,"2013-01-22":7};
var result = [];

for(var i in json_data)
    result.push([i, json_data [i]]);


var data = new google.visualization.DataTable();
data.addColumn('string', 'Topping');
data.addColumn('number', 'Slices');
data.addRows(result);

http://jsfiddle.net/MV5rj/


올바른 형식의 JSON이있는 경우 다음을 수행 할 수 있습니다.

var as = JSON.parse(jstring);

AJAX를 통해 배열을 배열 할 때 항상이 작업을 수행합니다.


function json2array(json){
    var result = [];
    var keys = Object.keys(json);
    keys.forEach(function(key){
        result.push(json[key]);
    });
    return result;
}

이 전체 설명을 참조하십시오 : http://book.mixu.net/node/ch5.html


다음이 안심 가정합니다.

var j = {0: "1", 1: "2", 2: "3", 3: "4"};

다음과 같이 값을 얻을 수 있습니다.

Object.keys(j).map(function(_) { return j[_]; })

다수 :

["1", "2", "3", "4"]

이렇게하면 문제가 해결됩니다.

const json_data = {"2013-01-21":1,"2013-01-22":7};

const arr = Object.keys(json_data).map((key) => [key, json_data[key]]);

console.log(arr);

또는 Object.entries () 메서드를 사용합니다.

console.log(Object.entries(json_data));

두 경우 모두 출력은 다음과 가변합니다.

/* output: 
[['2013-01-21', 1], ['2013-01-22', 7]]
*/

다음과 같이 배열에 개체 항목을 삽입 할 수 있습니다.

let obj = {
  '1st': {
    name: 'stackoverflow'
  },
  '2nd': {
    name: 'stackexchange'
  }
};
 
 let wholeArray = Object.keys(obj).map(key => obj[key]);
 
 console.log(wholeArray);


이렇게 간단합니다!

var json_data = {"2013-01-21":1,"2013-01-22":7};
var result = [json_data];
console.log(result);

참고 URL : https://stackoverflow.com/questions/14528385/how-to-convert-json-object-to-javascript-array

반응형