假设我们有以下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 ] ]