JavaScript从文本/数组中删除重复项

时间:2014-11-09 19:54:38

标签: javascript

我想根据重复的关键字删除文本中的行。文字是这样的。

text1,abc,text2
text3,cde,text4
text5,abc,text6
text7,gfh,text8
text9,cde,text10

我想进入。

text1,abc,text2
text3,cde,text4
text7,gfh,text8

我们的想法是获取文本,根据行分割它并将其通过2个循环。然后比较两个数组,它将删除它的重复。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

这是一个jsFiddle,它将删除数据数组中间列中的重复项: http://jsfiddle.net/bonneville/xv90ypgf/

var sortedAr = ar.sort(sortOnMiddleText);
var noDupsAr = removeDups(sortedAr);

首先对中间列进行排序,然后删除重复项。 代码是纯javascript但使用jQuery来显示结果。 (我更喜欢使用javaScript forEach而不是for循环,但并不是所有浏览器都支持它,所以你需要一个polyfill。)

答案 1 :(得分:0)

解决它的最佳方法是使用key_value数组(键值对),并注意该键是唯一的,因此您将自动获得具有唯一值的新表。希望这会帮助你。

function RemoveDuplicate(table_data) {
      var listFinale = [], key_value = {};
      for (var i = 0; i < table_data.length; i++) {
        key_value[table_data[i]] = i;
      }
      for (var key in key_value) {
        listFinale.push(key);
      }
      return  listFinale.join(",");
    }