JavaScripr实现根据对象属性值得到当前整个属性方法?

发布于 2021-03-16 10:07:14

有时候在做前端时需要实现雷士TP5更具指定字段值查询数据表的功能,当然今天说的不是javascript查询数据库,而是对已有的对象【json】单独获取某元素,

例如我有一整张 苹果cms的分类 json数据,

var typeJSON = [{
            "type_id": 7,
            "type_name": "少儿",
            "type_en": "xijupian",
            "type_sort": 7,
            "type_mid": 1,
        },
        {
            "type_id": 4,
            "type_name": "动漫",
            "type_en": "dongman",
            "type_sort": 4,
            "type_mid": 1,
        },
        {
            "type_id": 3,
            "type_name": "综艺",
            "type_en": "zongyi",
            "type_sort": 3,
            "type_mid": 1,
        },
        {
            "type_id": 2,
            "type_name": "连续剧",
            "type_en": "lianxuju",
            "type_sort": 2,
            "type_mid": 1,
            "type_pid": 0,
        },
        {
            "type_id": 1,
            "type_name": "电影",
            "type_en": "dianying",
            "type_sort": 1,
            "type_mid": 1,
            "type_jumpurl": "",
        }
    ]

我需要 在不知道索引的情况更具 type_id = 2 来抽取 连续剧这个分类的对象可以使用一下函数完成

function typeQuery(arr,id){
    var json = arr.filter(item => item.type_id == id)
    if (json.length == 0){
        let newArr = [];
        arr.forEach((value,index) => {
            if (value.child){
                newArr[index] = value.child.filter(item => item.type_id == id)//获取子分类
            }                
        });
        json = newArr[0];
    };
    return json;
}
var type = typeQuery(typeJSON,2);
console.log(type)

image.png

0 条评论

发布
问题