[英]Javascript remove keys from nested arrays
我正在从mysql检索数据,并希望将localStorage中的每一行数据保存为数组。 以下是我在JavaScript端收到的嵌套数组。
arr = [{image_id: "80", imagename: "Image1",firstx: "267", firsty: "403"},
{image_id: "80", imagename: "Image1",firstx: "320", firsty: "470"},
{image_id: "80", imagename: "Image2",firstx: "126", firsty: "237"}
]
我要从中删除image_id,imagename,firstx和firsty,并返回一个结果,该结果是一个数组,仅包含每个数组的值。 所需的输出是
newarr =[[80,Image1,267,403],[80,Image1,320,470],[80,Image2,126,237]]
我已经完成以下工作:
var newarr = [];
for (var i = 0, l = arr.length; i < l; i++) {
var keys = Object.keys(arr[i]);
for (var j = 0, k = keys.length; j < k; j++) {
newarr.push(arr[i][keys[j]]);
}
}
console.log(newarr)
这将作为数组返回每个元素。 结果数组将作为嵌套数组推送到localStorage。
我猜你想要一个数组而不是一个对象-通过Object.values
map
:
const arr = [{image_id: "80", imagename: "Image1",firstx: "267", firsty: "403"}, {image_id: "80", imagename: "Image1",firstx: "320", firsty: "470"}, {image_id: "80", imagename: "Image2",firstx: "126", firsty: "237"} ]; console.log(arr.map(Object.values));
var newarr = [];
for (var i = 0, l = arr.length; i < l; i++) {
var keys = Object.keys(arr[i]);
newarr[i] = [];
for (var j = 0, k = keys.length; j < k; j++) {
newarr[i].push(arr[i][keys[j]]);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.