1

I have an object like this:

var myObj = {
    a: 1,
    b: 2,
    c: 3,
    d: 4
};

And i want to convert that object to a multi-dimensional array like this:

var myArray = [['a', 1], ['b', 2], ['c', 3], ['d', 4]];

How could i achieve this?

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
aboutus
  • 229
  • 4
  • 13

2 Answers2

4

You can use Object.entries function.

var myObj = { a: 1, b: 2, c: 3, d: 4 },
    myArray = Object.entries(myObj);
    
    console.log(JSON.stringify(myArray));

...or Object.keys and Array#map functions.

var myObj = { a: 1, b: 2, c: 3, d: 4 },
    myArray = Object.keys(myObj).map(v => new Array(v, myObj[v]));
    
    console.log(JSON.stringify(myArray));
kind user
  • 40,029
  • 7
  • 67
  • 77
1

var myArray = [];
var myObj = { a: 1, b: 2, c: 3, d: 4 };
for(var key in myObj) {
  myArray.push([key, myObj[key]]);
}
console.log(JSON.stringify(myArray));
EyuelDK
  • 3,029
  • 2
  • 19
  • 27