Search code examples
javascriptarraysunique

Unique array with member names


i have an array with group members (last_name, first_name), but in the group "Testgroup" is another group "Testgroup2". The bad thing is that i dont get unique values from both groups.

Can anyone help ? It´s Javascript

var manager_list = new Array;
var manager_list = new Array;
var srvData = new spl_srv();


    <LIST PREFIX=list WHERE="group.last_name = 'Testgroup'">
        var wc = "group = U'$list.member'";
        var data = srvData.read("grpmem", wc, "member.last_name|member.first_name|member");
        var anz  = srvData.getcount();
        if(anz > 0) {
            for (i=0; i<anz; i++){
                var UU_ID = srvData.getdata(i,2);
                UU_ID = UU_ID.replace(/\r?\n|\r/g,"");
                manager_list.push(srvData.getdata(i,0)+', '+srvData.getdata(i,1)+'@,@'+UU_ID);
            }
        } 
        else {

        manager_list.push("$list.member.last_name, $list.member.first_name@,@$list.member");
        }


Solution

  • There are multiple ways to get Unique values from array(Removing duplicates)

    1. var uniqueManagers = []; $.each(manager_list, function(i, el){ if($.inArray(el, uniqueManagers) === -1) uniqueManagers.push(el); });

    2. let uniqueManagers = Array.from(new Set(manager_list))

    Your code should be something like below

    var manager_list = new Array;
    var manager_list = new Array;
    var srvData = new spl_srv();
           <LIST PREFIX=list WHERE="group.last_name = 'Testgroup'">
            var wc = "group = U'$list.member'";
            var data = srvData.read("grpmem", wc, "member.last_name|member.first_name|member");
            var anz  = srvData.getcount();
            if(anz > 0) {
                for (i=0; i<anz; i++){
                    var UU_ID = srvData.getdata(i,2);
                    UU_ID = UU_ID.replace(/\r?\n|\r/g,"");
                    manager_list.push(srvData.getdata(i,0)+', '+srvData.getdata(i,1)+'@,@'+UU_ID);
                }
            } 
            else {
    
            manager_list.push("$list.member.last_name, $list.member.first_name@,@$list.member");
            }
      manager_list = Array.from(new Set(manager_list))