배열에서 중복 레코드를 제거하는 다음과 같은 방법이 있습니다. updatedDatetime에서 최신 이름 레코드를 원합니다. 마지막으로 업데이트 된 날짜 - 시간으로 레코드를 정렬하는 방법? 나는 최신 기록을 보여주고 싶다. 오름차순으로 들어배열에서 레코드를 지우는 방법 중복 배열 제거
var list = removeDuplicates(listjson, 'user_id');
function removeDuplicates(originalArray, objKey) {
var trimmedArray = [];
var values = [];
var value;
for(var i = 0; i < originalArray.length; i++) {
value = originalArray[i][objKey].name;
if(values.indexOf(value) === -1) {
trimmedArray.push(originalArray[i]);
values.push(value);
}
}
return trimmedArray;
}
{
"_id": "59edd7c5ff809c1c4c7a43c2",
"updatedDatetime": "2017-11-08T11:51:33.106Z",
"createdDatetime": "2017-11-08T11:51:33.106Z",
"message": "test sms for mobile",
"user_id": {
"_id": "59f07d5c935f27764c8d1090",
"name": "sami"
},
"__v": 0
} {
"_id": "59e9e039d0a8251c7cf29f98",
"updatedDatetime": "2017-11-08T11:28:33.401Z",
"createdDatetime": "2017-11-08T11:28:33.401Z",
"message": "test sms for mobile",
"user_id": {
"_id": "59f07d5c935f27764c8d1091",
"name": "zami"
},
"__v": 0
} {
"_id": "59f42b6823fcdc31b4185246",
"updatedDatetime": "2017-11-07T07:02:00.841Z",
"createdDatetime": "2017-11-07T07:02:00.841Z",
"message": "hi",
"user_id": {
"_id": "59f07d5c935f27764c8d1091",
"name": "sami"
},
"__v": 0
} {
"_id": "59f1c143a1f0ce2114700ef4",
"updatedDatetime": "2017-11-06T11:04:35.140Z",
"createdDatetime": "2017-11-06T11:04:35.140Z",
"message": "mobile user",
"user_id": {
"_id": "59f07d5c935f27764c8d1091",
"name": "zami"
},
"__v": 0
}]