Q209124

by jun68ykt

HTML

<div id="test"></div>

JavaScript

var arr = [
  ["a","a","a",1,"2019/01/01"],
  ["a","b","a",1,"2019/01/01"],
  ["b","a","a",1,"2019/01/01"],
  ["a","a","c",1,"2019/01/01"],
  ["c","a","c",1,"2019/01/01"],
  ["b","b","b",1,"2019/01/01"],
  ["b","b","a",1,"2019/01/01"],
  ["c","a","c",1,"2019/07/01"],
  ["b","a","b",1,"2019/01/01"],
  ["a","a","a",1,"2019/02/02"]
];

//並び替え
arr.sort(function(a, b) {

  if(a[0] > b[0]){return 1;}
  else if(a[0] < b[0]){return -1;}
  else if(a[1] > b[1]){return 1;}
  else if(a[1] < b[1]){return -1;}
  else if(a[2] > b[2]){return 1;}
  else if(a[2] < b[2]){return -1;}
  else if(a[4] > b[4]){return -1;}
  else if(a[4] < b[4]){return 1;}
  else{return 0;}

});

var arr2 = arr.filter(function (x, i, self) {
  if ( i ===0 )
    return true;
  else {
    const y = self[i-1];
    return `${x[0]}${x[1]}${x[2]}` !== `${y[0]}${y[1]}${y[2]}`;
  }
});

for (var i = 0; i < arr2.length; i++) {
  test.innerHTML += arr2[i] + "<br>";

}