Symmetric Difference

function sym(args) {

  var arr = [];

  var answer = [];

  arr = Array.prototype.slice.call(arguments);

  answer = arr.reduce(function(a,b){  //合并数组

    return a.concat(b).filter(function(item,index,arr){  //过滤两个数组都有的项

      return a.indexOf(item) ===-1||b.indexOf(item)===-1;

    }).filter(function(item,index,arr){  //数组去重

      return arr.indexOf(item) ===index;

    });

  });


  return answer;

}

你可能感兴趣的:(Symmetric Difference)