2017-04-24 79 views
0

我有一个基于返回的查询动态运行的函数的递归类型,现在我想避免每个递归循环从我的数组中的重复/冗余数据,我把所有返回来自我阵列的数据。避免在递归内部数组中的重复数据

以下是我有:

function getbarxAxis() { 
$.ajax({ 
    url: siteurl+"patients_report/bardata_date", 
    type: "POST", 
    dataType: "JSON", 
    success: function(data) { 
    var categories = new Array(); 
    for (var i in data) { 
     categories.push(data[i]["datemonths"]); 
     getbarseries(data[i]["datemonths"]); 
    } 
    } 
}); 
} 

这是我的第一个AJAX那里得到的所有datemonths,现在比如我有两个datemonths然后里面的功能现在是递归的,现在从功能其内部是getbarseries,我有在阵列中存储数据的阵列,现在在这里它是:

function getbarseries(month) { 
    $.ajax({ 
     url: siteurl+"patients_report/bardataclinic/"+month, 
     type: "POST", 
     dataType: "JSON", 
     success: function(data) { 
      var names = new Array(); 
      for(var i in data) { 
      names.push(data[i]['clinic_name']); 
      } 

      alert(JSON.stringify(uniqueNames)); 

     } 
    }); 
} 

现在第一递归数据是例如:

Clinic 1, Clinic 2, Clinic 3, Clinic 4 

二递归数据是:

Clinic 1, Clinic 2, Clinic 3, Clinic 4, Clinic 5 

我想有检测复制一个更清洁,如果它被复制,它不会推/从阵列中添加。

所以,我从阵列所需的输出是这样的两个递归:

Clinic 1, Clinic 2, Clinic 3, Clinic 4, Clinic 5 

回答

-1

为简单起见,我只是张贴下面的代码。你应该能够相应地更新你的代码。

var round1 = ["Clinic 1","Clinic 2"]; 
var round2 = ["Clinic 2", "Clinic 3"]; 

var finalround = round1.concat(round2); // Merges both arrays 
// ['Clinic 1', 'Clinic 2', 'Clinic 3' ] 

因此,抓住第一递归数据和下一个和刚才CONCAT