Notepad++Good Luck To You!

js json多条件筛选?
浏览: 2247    评论: 0

//商品列表vardata=[{"id":0,"goodsImg":"/images/ss1.jpg","title":"手机","subt...


//商品列表

var data = [

    {

    "id": 0,

    "goodsImg": "/images/ss1.jpg",

    "title": "手机",

    "subtitle": "手机,上海,粉色",

    "price": "888.00",

    "sale": "999.00",

    "place": "北京",

    "color": "红色",

    "pid": "华为",

    "sid": "手机"

    },

    {

    "id": 1,

    "goodsImg": "/images/ss1.jpg",

    "title": "手机",

    "subtitle": "手机,上海,粉色",

    "price": "888.00",

    "sale": "999.00",

    "place": "北京",

    "color": "黑色",

    "pid": "华为",

    "sid": "手机"

    },

    {

    "id": 2,

    "goodsImg": "/images/ss1.jpg",

    "title": "手机",

    "subtitle": "手机,上海,粉色",

    "price": "888.00",

    "sale": "999.00",

    "place": "上海",

    "color": "红色",

    "pid": "苹果",

    "sid": "手机"

    },

    {

    "id": 3,

    "goodsImg": "/images/ss1.jpg",

    "title": "手机",

    "subtitle": "手机,上海,粉色",

    "price": "888.00",

    "sale": "999.00",

    "place": "北京",

    "color": "黑色",

    "pid": "苹果",

    "sid": "手机"

    }

]

//筛选条件,需要筛选的字段和商品的字段得保持一致

var filter = {

    pid: ['华为'],

    sid: ['手机'],

    color: ['黑色', '红色'],

    place: ['北京']

}


function filterData(data, filter){

    return data.filter(item => {

        var isIn = true

        for(var key in filter) {

            if(filter[key].indexOf(item[key]) < 0){

                isIn = false

                break

            }

        }

        return isIn

    })

}


var newData = filterData(data, filter)

console.log(newData)


全文详见:http://xpxw.com/?id=91

TOP


«    2024年10月    »
123456
78910111213
14151617181920
21222324252627
28293031
TOP 搜索
TOP 控制面板
您好,欢迎到访网站!
  查看权限
TOP 最新留言
    TOP 作者列表
    TOP 站点信息
    • 文章总数:163
    • 页面总数:0
    • 分类总数:6
    • 标签总数:20
    • 评论总数:0
    • 浏览总数:361552