let DATA = [
{
Date: '8/28/21',
Time: 'M',
Numbers: 50,
},
{
Date: '8/28/21',
Time: 'M',
Numbers: 50,
},
{
Date: '8/28/21',
Time: 'F',
Numbers: 50,
},
{
Date: '8/29/21',
Time: 'E',
Numbers: 81,
},
{
Date: '8/29/21',
Time: 'E',
Numbers: 81,
},
{
Date: '8/29/21',
Time: 'M',
Numbers: 45,
},
{
Date: '8/29/21',
Time: 'M',
Numbers: 45,
},
{
Date: '8/28/21',
Time: 'M',
Numbers: 50,
},
];
function getNextUniqueRecordsByNumber(no){
const numbers = new Set();
const result = [];
for(let i=0; i<DATA.length; i++){
const item = DATA[i];
if(!numbers.has(item.Numbers)){
result.push(item);
numbers.add(item.Numbers);
}
if(result.length==no){
DATA = DATA.slice(i+1);
break;
}
}
return result;
}
console.log('before', DATA);
console.log('res : ',getNextUniqueRecordsByNumber(3));
console.log('afer', DATA);
console.log("================")
console.log('res : ',getNextUniqueRecordsByNumber(2));
console.log('afer', DATA);
console.log("================")
console.log('res : ',getNextUniqueRecordsByNumber(2));