Javascript 有没有一种简单的方法可以根据不同的条件过滤json数据

Javascript 有没有一种简单的方法可以根据不同的条件过滤json数据,javascript,node.js,express,filter,Javascript,Node.js,Express,Filter,我从我的一个web服务中得到以下数据作为响应。我想根据不同值的几个组合过滤数据。最简单的方法是什么,以使其影响web服务的性能 数据:我得到了一组对象 [ { "source": "9606.ENSP00000000233", "target": "9606.ENSP00000366563", "relationship": "ON_INTERACTION_WITH", "relationshipdetails": {

我从我的一个web服务中得到以下数据作为响应。我想根据不同值的几个组合过滤数据。最简单的方法是什么,以使其影响web服务的性能

数据:我得到了一组对象

[
    {
        "source": "9606.ENSP00000000233",
        "target": "9606.ENSP00000366563",
        "relationship": "ON_INTERACTION_WITH",
        "relationshipdetails": {
            "database4": "0",
            "database3": "0",
            "coexpression2": "42",
            "coexpression3": "42",
            "experimental": "174",
            "database2": "0",
            "combinedscore3": "298",
            "combinedscore4": "298",
            "experimental2": "174",
            "combinedscore": "298",
            "database": "0",
            "combinedscore2": "298",
            "experimental3": "174",
            "experimental4": "174",
            "coexpression4": "42",
            "textmining3": "184",
            "coexpression": "42",
            "textmining4": "184",
            "textmining2": "184",
            "textmining": "184"
        }
    },
    {
        "source": "9606.ENSP00000000233",
        "target": "9606.ENSP00000402551",
        "relationship": "ON_INTERACTION_WITH",
        "relationshipdetails": {
            "database4": "0",
            "database3": "0",
            "coexpression2": "148",
            "coexpression3": "148",
            "experimental": "138",
            "database2": "0",
            "combinedscore3": "247",
            "combinedscore4": "247",
            "experimental2": "138",
            "combinedscore": "247",
            "database": "0",
            "combinedscore2": "247",
            "experimental3": "138",
            "experimental4": "138",
            "coexpression4": "148",
            "textmining3": "57",
            "coexpression": "148",
            "textmining4": "57",
            "textmining2": "57",
            "textmining": "57"
        }
    },
    {
        "source": "9606.ENSP00000000233",
        "target": "9606.ENSP00000386239",
        "relationship": "ON_INTERACTION_WITH",
        "relationshipdetails": {
            "database4": "0",
            "database3": "0",
            "coexpression2": "49",
            "coexpression3": "49",
            "experimental": "120",
            "database2": "0",
            "combinedscore3": "190",
            "combinedscore4": "190",
            "experimental2": "120",
            "combinedscore": "190",
            "database": "0",
            "combinedscore2": "190",
            "experimental3": "120",
            "experimental4": "120",
            "coexpression4": "49",
            "textmining3": "110",
            "coexpression": "49",
            "textmining4": "110",
            "textmining2": "110",
            "textmining": "110"
        }
    }
]
条件:
其中textmining>//它取决于您希望在数组上执行的
特定的
逻辑。
但一般来说,获取值和比较值时,我认为更好的选择是循环

性能方面

const arr=[
{
“来源”:“9606.ENSP0000000233”,
“目标”:“9606.ENSP0000366563”,
“关系”:“与之互动”,
“关系详细信息”:{
“数据库4”:“0”,
“数据库3”:“0”,
“共表达2”:“42”,
“共表达3”:“42”,
“实验性”:“174”,
“数据库2”:“0”,
“组合分数3”:“298”,
“组合分数4”:“298”,
“实验2”:“174”,
“组合分数”:“298”,
“数据库”:“0”,
“组合分数2”:“298”,
“实验3”:“174”,
“实验4”:“174”,
“共表达4”:“42”,
“textmining3”:“184”,
“共表达”:“42”,
“textmining4”:“184”,
“textmining2”:“184”,
“文本挖掘”:“184”
}
},
{
“来源”:“9606.ENSP0000000233”,
“目标”:“9606.ENSP0000402551”,
“关系”:“与之互动”,
“关系详细信息”:{
“数据库4”:“0”,
“数据库3”:“0”,
“共表达2”:“148”,
“共表达3”:“148”,
“实验性”:“138”,
“数据库2”:“0”,
“combinedscore3”:“247”,
“组合分数4”:“247”,
“实验2”:“138”,
“组合分数”:“247”,
“数据库”:“0”,
“组合分数2”:“247”,
“实验3”:“138”,
“实验4”:“138”,
“共表达4”:“148”,
“textmining3”:“57”,
“共表达”:“148”,
“textmining4”:“57”,
“textmining2”:“57”,
“文本挖掘”:“57”
}
},
{
“来源”:“9606.ENSP0000000233”,
“目标”:“9606.ENSP0000386239”,
“关系”:“与之互动”,
“关系详细信息”:{
“数据库4”:“0”,
“数据库3”:“0”,
“共表达2”:“49”,
“共表达3”:“49”,
“实验性”:“120”,
“数据库2”:“0”,
“combinedscore3”:“190”,
“组合分数4”:“190”,
“实验2”:“120”,
“组合分数”:“190”,
“数据库”:“0”,
“combinedscore2”:“190”,
“实验3”:“120”,
“实验4”:“120”,
“共表达4”:“49”,
“textmining3”:“110”,
“共表达”:“49”,
“textmining4”:“110”,
“textmining2”:“110”,
“文本挖掘”:“110”
}
}
] ; 

log(arr.filter(entry=>entry.relationshipdetails.textmining>110))
您可以使用filter,只需添加所需的比较和逻辑即可返回true或false

var数据=[
{
“来源”:“9606.ENSP0000000233”,
“目标”:“9606.ENSP0000366563”,
“关系”:“与之互动”,
“关系详细信息”:{
“数据库4”:“0”,
“数据库3”:“0”,
“共表达2”:“42”,
“共表达3”:“42”,
“实验性”:“174”,
“数据库2”:“0”,
“组合分数3”:“298”,
“组合分数4”:“298”,
“实验2”:“174”,
“组合分数”:“298”,
“数据库”:“0”,
“组合分数2”:“298”,
“实验3”:“174”,
“实验4”:“174”,
“共表达4”:“42”,
“textmining3”:“184”,
“共表达”:“42”,
“textmining4”:“184”,
“textmining2”:“184”,
“文本挖掘”:“184”
}
},
{
“来源”:“9606.ENSP0000000233”,
“目标”:“9606.ENSP0000402551”,
“关系”:“与之互动”,
“关系详细信息”:{
“数据库4”:“0”,
“数据库3”:“0”,
“共表达2”:“148”,
“共表达3”:“148”,
“实验性”:“138”,
“数据库2”:“0”,
“combinedscore3”:“247”,
“组合分数4”:“247”,
“实验2”:“138”,
“组合分数”:“247”,
“数据库”:“0”,
“组合分数2”:“247”,
“实验3”:“138”,
“实验4”:“138”,
“共表达4”:“148”,
“textmining3”:“57”,
“共表达”:“148”,
“textmining4”:“57”,
“textmining2”:“57”,
“文本挖掘”:“57”
}
},
{
“来源”:“9606.ENSP0000000233”,
“目标”:“9606.ENSP0000386239”,
“关系”:“与之互动”,
“关系详细信息”:{
“数据库4”:“0”,
“数据库3”:“0”,
“coexpression2”:“49”,
“共表达3”:“49”,
“实验性”:“120”,
“数据库2”:“0”,
“combinedscore3”:“190”,
“组合分数4”:“190”,
“实验2”:“120”,
“组合分数”:“190”,
“数据库”:“0”,
“combinedscore2”:“190”,
“实验3”:“120”,
“实验4”:“120”,
“共表达4”:“49”,
“textmining3”:“110”,