如何删除javascript中嵌套数组对象中的对象
我想知道如何使用javascript根据条件删除对象 如果如何删除javascript中嵌套数组对象中的对象,javascript,jquery,arrays,object,Javascript,Jquery,Arrays,Object,我想知道如何使用javascript根据条件删除对象 如果传输成本>200,则仅在obj中使用,否则将其删除 var obj1 = [{ "id": "trans", "option": "bank", "cost": "100" }, { "id": "fund", "option": "credit", "cost": "300" }, { "id": "service", "option": "bank", "cost": "200" }] var o
传输成本>200
,则仅在obj中使用,否则将其删除
var obj1 = [{
"id": "trans",
"option": "bank",
"cost": "100"
}, {
"id": "fund",
"option": "credit",
"cost": "300"
}, {
"id": "service",
"option": "bank",
"cost": "200"
}]
var obj2 = [{
"id": "trans",
"option": "bank",
"cost": "200"
}, {
"id": "fund",
"option": "credit",
"cost": "300"
}, {
"id": "service",
"option": "bank",
"cost": "200"
}]
//not working for obj2 returns []
function getData(obj) {
return obj.filter(i => i.id !== "trans" && i.cost < 200).map(e => e.id);
}
var result = getData(obj1); //output: ["fund","service"]
var result = getData(obj2); //output: ["trans","fund","service"]
var obj1=[{
“id”:“trans”,
“选项”:“银行”,
“成本”:“100”
}, {
“id”:“基金”,
“选项”:“信用证”,
“成本”:“300”
}, {
“id”:“服务”,
“选项”:“银行”,
“成本”:“200”
}]
变量obj2=[{
“id”:“trans”,
“选项”:“银行”,
“成本”:“200”
}, {
“id”:“基金”,
“选项”:“信用证”,
“成本”:“300”
}, {
“id”:“服务”,
“选项”:“银行”,
“成本”:“200”
}]
//不适用于obj2返回[]
函数getData(obj){
返回对象筛选器(i=>i.id!==“trans”&&i.cost<200).map(e=>e.id);
}
var结果=获取数据(obj1)//产出:[“基金”、“服务”]
var结果=获取数据(obj2)//输出:[“交易”、“资金”、“服务”]
只需在两个条件下尝试过滤器,它对我有效
var obj1=[{
“id”:“trans”,
“选项”:“银行”,
“成本”:“100”
}, {
“id”:“基金”,
“选项”:“信用证”,
“成本”:“300”
}, {
“id”:“服务”,
“选项”:“银行”,
“成本”:“200”
}]
变量obj2=[{
“id”:“trans”,
“选项”:“银行”,
“成本”:“200”
}, {
“id”:“基金”,
“选项”:“信用证”,
“成本”:“300”
}, {
“id”:“服务”,
“选项”:“银行”,
“成本”:“200”
}]
设x1=obj1.filter(o=>o.id==“trans”&&o.cost>=200);
设x2=obj2.filter(o=>o.id==“trans”&&o.cost>=200);
控制台日志(x1);
控制台日志(x2)代码>只需在两个条件下尝试过滤器,它对我有效
var obj1=[{
“id”:“trans”,
“选项”:“银行”,
“成本”:“100”
}, {
“id”:“基金”,
“选项”:“信用证”,
“成本”:“300”
}, {
“id”:“服务”,
“选项”:“银行”,
“成本”:“200”
}]
变量obj2=[{
“id”:“trans”,
“选项”:“银行”,
“成本”:“200”
}, {
“id”:“基金”,
“选项”:“信用证”,
“成本”:“300”
}, {
“id”:“服务”,
“选项”:“银行”,
“成本”:“200”
}]
设x1=obj1.filter(o=>o.id==“trans”&&o.cost>=200);
设x2=obj2.filter(o=>o.id==“trans”&&o.cost>=200);
控制台日志(x1);
控制台日志(x2)代码>
你可以这样做。FilterDarray将仅包含大于200的值
你可以这样做。FilterDarray将只包含>200的值((事务)=>id=='trans'&&transaction.cost>=200)
obj2.过滤器(功能(事务){
})) obj1.filter((事务)=>id=='trans'&&transaction.cost>=200)
obj2.过滤器(功能(事务){
}))
这对你很有帮助
它将帮助您使用过滤器
,如下所示-
var result = obj1.filter(item => item.id === "trans" && item.cost > 200);
使用过滤器如下-
var result = obj1.filter(item => item.id === "trans" && item.cost > 200);
将'&&
替换为|
,并且您在代码上使用的是
;返回对象筛选器(i=>i.id==“trans”&&i.cost>=200);将'&&
替换为|
,并且您在代码上使用的是
;返回对象筛选器(i=>i.id==“trans”&&i.cost>=200);
var obj1 = [{
"id": "trans",
"option": "bank",
"cost": "100"
}, {
"id": "fund",
"option": "credit",
"cost": "300"
}, {
"id": "service",
"option": "bank",
"cost": "200"
}]
var obj2 = [{
"id": "trans",
"option": "bank",
"cost": "200"
}, {
"id": "fund",
"option": "credit",
"cost": "300"
}, {
"id": "service",
"option": "bank",
"cost": "200"
}]
var obj1_filter = obj1.filter(function(options_list){
return options_list.id="trans" && options_list.cost>=200;
});
var obj2_filter = obj2.filter(function(options_list){
return options_list.id='trans' && options_list.cost>=200
});
console.log(obj1_filter);
console.log(obj2_filter);
var result = obj1.filter(item => item.id === "trans" && item.cost > 200);