【问题标题】:Javascript use JSON to remove duplicate from array of objects [duplicate]Javascript 使用 JSON 从对象数组中删除重复项 [重复]
【发布时间】:2017-12-16 09:20:15
【问题描述】:

我尝试制作一个独特的对象数组。我尝试了很多解决方案。最后写一个函数。它有效,但还有其他解决方案吗?为什么 $.unique 不起作用?

var a = [{"id": "id1", "name": "id1"},{"id": "id1", "name": "id1"},{"id": "id2", "name": "id2"}];
var jq = $.unique(a);
console.log("jq=",jq); // NOT UNIQUE!?
var myfunc = unique(a);
console.log("myfunc=",myfunc); // UNIQUE!

function unique(arr){
    var uniqueArr=[];
    var jsonarr = [];
    $.each(arr,function(ax, a){
        var j = JSON.stringify(a);
        if( jsonarr.indexOf(j) == -1 ){
            jsonarr.push(j);
            uniqueArr.push(a);
        }
    });
    return uniqueArr;
}   

【问题讨论】:

标签: javascript jquery arrays unique


【解决方案1】:

lodash 库有一个实现

_.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');
// => [{ 'x': 1 }, { 'x': 2 }]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-19
    • 2020-10-25
    • 2017-04-10
    • 2012-12-06
    • 2019-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多