对于给定的对象,如果属性的输入“值”为“”,我们想从该对象中删除该属性。
Ex
{
"Speed": "59 MBPS",
"latitude": "90.2",
"longitude": ""
}
根据示例,由于经度的值为“”,因此应从对象中删除该值。 请提出一个JavaScript代码来实现这一目标。
答案 0 :(得分:0)
您可以使用Object.keys()
从对象获取密钥。然后,您可以filter
属性!==""
,然后将其简化为Object
。
类似这样的东西:-
let o = {
"Speed": "59 MBPS",
"latitude": "90.2",
"longitude": "",
"prop": ""
};
let res = Object.keys(o).filter(k => o[k] !== "").reduce((acc, cv) => {
acc[cv] = o[cv];
return acc;
}, {});
console.log(res);
或仅使用delete
如下:
let o = { "Speed": "59 MBPS", "latitude": "90.2", "longitude": "" };
for (let key in o) {
if (o.hasOwnProperty(key) && o[key] == "") {
delete o[key];
}
}
console.log(o);