在javascript中删除多个对象键值
我想知道如何删除对象javascript中的多个键。 如何删除obj中的日期键在javascript中删除多个对象键值,javascript,arrays,object,Javascript,Arrays,Object,我想知道如何删除对象javascript中的多个键。 如何删除obj中的日期键 var obj ={ "id": "1", "cn": "TH", "curr": "THB", "10-02-2020": "10,11", "12-01-2019": "2,5" } var result = filterkeys(obj,["id","cn","curr"]); function filterkeys(obj,arr){ arr.forEach(function(k
var obj ={
"id": "1",
"cn": "TH",
"curr": "THB",
"10-02-2020": "10,11",
"12-01-2019": "2,5"
}
var result = filterkeys(obj,["id","cn","curr"]);
function filterkeys(obj,arr){
arr.forEach(function(key) {
delete !obj[key];
});
return obj;
}
预期产出:
{
"id": "1",
"cn": "TH",
"curr": "THB"
}
您需要换一种方式-迭代对象的所有键,如果它不在
arr
中,请删除它:
var obj={
“id”:“1”,
“cn”:“TH”,
“货币”:“泰铢”,
"10-02-2020": "10,11",
"12-01-2019": "2,5"
}
var结果=筛选键(obj、[“id”、“cn”、“curr”]);
功能过滤器键(obj、arr){
for(对象的常量键。键(obj)){
如果(!arr.includes(键)){
删除obj[key];
}
}
返回obj;
}
控制台日志(结果)代码>使用对象。分配并通过所需的键添加条目。
或者,您可以使用Reflect.deleteProperty
删除不需要的键
var obj={
id:“1”,
cn:“TH”,
货币:“泰铢”,
"10-02-2020": "10,11",
"12-01-2019": "2,5"
};
常量过滤器键=(对象,键)=>
Object.assign({},…keys.map(key=>({[key]:obj[key]}));
var结果=筛选键(obj、[“id”、“cn”、“curr”]);
控制台日志(结果);
常量过滤器键2=(对象,键)=>{
Object.keys(obj.forEach)(key=>!keys.includes(key)&&Reflect.deleteProperty(obj,key))
返回obj;
};
var result2=filterkeys2(obj,[“id”,“cn”,“curr”]);
console.log(result2)
您可以尝试lodash省略
或拾取
这是否回答了您的问题?