在 JavaScript 中将对象转换为 2-D 数组


假设我们有一个包含有关城市天气信息的对象 -

const obj = {
   city: "New Delhi",
   maxTemp: 32,
   minTemp: 21,
   humidity: 78,
   aqi: 456,
   day: 'Tuesday',
};

我们需要编写一个接收此类对象的 JavaScript 函数。该函数应该基于此对象构造一个数组的数组,其中每个子数组恰好包含两个属性 -

  • 对应的键

  • 该键的值

因此,对于上述对象,输出应该如下所示 -

const output = [
   [ 'city', 'New Delhi' ],
   [ 'maxTemp', 32 ],
   [ 'minTemp', 21 ],
   [ 'humidity', 78 ],
   [ 'aqi', 456 ],
   [ 'day', 'Tuesday' ]
];

示例

代码如下 -

const obj = {
   city: "New Delhi",
   maxTemp: 32,
   minTemp: 21,
   humidity: 78,
   aqi: 456,
   day: 'Tuesday',
};
const objectToArray = (obj = {}) => {
   const res = [];
   const keys = Object.keys(obj);
   for(key of keys){
      res.push([
         key, obj[key]
      ]);
   };
   return res;
};
console.log(objectToArray(obj));

输出

控制台上的输出如下 -

[
   [ 'city', 'New Delhi' ],
   [ 'maxTemp', 32 ],
   [ 'minTemp', 21 ],
   [ 'humidity', 78 ],
   [ 'aqi', 456 ],
   [ 'day', 'Tuesday' ]
];

更新于: 10-Dec-2020

691 次浏览

开启您的 事业生涯

通过完成课程以获得认证

入门
广告