【问题标题】:How to filter object with array如何用数组过滤对象
【发布时间】:2014-01-20 12:54:39
【问题描述】:

我想使用仅显示唯一值的数组 aaData 过滤此对象,例如,如果第 1 个名称为 testowy2,第 2 个和第 3 个有 testowy,则应该只显示一个 testowy 数据。

var json_data =
    {
        "sEcho": 1,
        "iTotalRecords": 54,
        "iTotalDisplayRecords": 54,
        "aaData": [
            [
                "79",
                "testowy2",
                "testowy samochod",
                "12.00",
                "14.00",
                "2147483647",
                "posciel",
                ""
            ],
            [
                "81",
                "testowy",
                "testowy produkt",
                "12.00",
                "14.00",
                "2147483647",
                "posciel",
                ""
            ],
            [
                "82",
                "testowy",
                "testowy produkt",
                "12.00",
                "14.00",
                "2147483647",
                "posciel",
                ""
            ]
        ]
    };

这个方法我试过了,但是不行

var list = "";
var parser = JSON.parse(JSON.stringify(json_data));
console.log(parser);
for(var i = 0; i < parser.aaData.length; i++){  
    for(var j = 0; j < parser.aaData[i].length; j++){   
        if(parser.aaData[i][1] != list){
            $('#json').append(parser.aaData[i][j]+"<br/>");     
            list = parser.aaData[i][j];
        }
    }   
}

【问题讨论】:

  • 其中哪一个被认为是name
  • 从 0 开始计数,第一个值是名称,例如 testowy2, testowy, testowy
  • 看起来像 jquery 数据表,你的编程语言是什么? Ruby、Php、Python??
  • 我想在 javascript 中制作它,jquery 由 jquery 中的数据表插件返回。

标签: javascript jquery mysql database json


【解决方案1】:

如果您只想查看唯一数据,您可以使用 list 来收集一组唯一名称。 比如:

var list = [];
var parser = JSON.parse(JSON.stringify(json_data));
for (var i = 0; i < parser.aaData.length; i++) {
    if (list.indexOf(parser.aaData[i][1]) < 0) {
        for (var j = 0; j < parser.aaData[i].length; j++) {
            $('#json').append(parser.aaData[i][j] + "<br/>");
        }
    }
    list.push(parser.aaData[i][1]);
}

Demo

【讨论】:

  • @user3211948,这里有很多大师在这里 :) 其中一些也是我的,你会在这里找到好人。不只是我大声笑:)
猜你喜欢
  • 1970-01-01
  • 2021-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-27
  • 2022-12-12
  • 2022-10-14
相关资源
最近更新 更多