从 JSON 对象 JavaScript 创建数组

javascriptweb developmentfront end technologyobject oriented programmingjson

假设我们有以下 JSON 对象 −

const obj = {
   "test1": [{
      "1": {
      "rssi": -25,
   }
   }, {
      "2": {
         "rssi": -25,
      }
   }],
   "test2": [{
      "15": {
         "rssi": -10,
      } }, {
         "19": {
         "rssi": -21,
      }
   }]
};

我们需要编写一个 JavaScript 函数,该函数接受类似这样的对象 −

然后,该函数应将所有嵌套对象的"rssi"属性映射到相应的嵌套数组数组。

因此,对于上述数组,输出应如下所示 −

const output = [[-25, -25], [-10, -21]];

示例

const obj = {
   "test1": [{
      "1": {
         "rssi": -25,
      }
   }, {
      "2": {
      "rssi": -25,
   }
}],
"test2": [
   {
      "15":
      { "rssi": -10,
      }
      }, {
         "19": {
         "rssi": -21,
      }
   }]
};
const mapToValues = (object = {}) => {
   const res = [];
   for (let key in object) {
      let obj = object[key];
      let aux = [];
      for (let i = 0; i < obj.length; i++) {
         for (x in obj[i]) {
            aux.push(obj[i][x].rssi);
         }
      }
      res.push(aux);
   }
   return res;
};
console.log(mapToValues(obj));

输出

控制台中的输出将是 −

[ [ -25, -25 ], [ -10, -21 ] ]

相关文章