-
-
Save Rudiger86/4c5edbd1ae8fe0b0086a074ef2d72116 to your computer and use it in GitHub Desktop.
Remove object from array of objects in Javascript
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Data that contains information of some I already have copies of | |
let allFiles = [ | |
{ filecode: '48099', | |
filedate: '20180430', | |
amountinfile: '55' }, | |
{ filecode: '48074', | |
filedate: '20180429', | |
amountinfile: '2'}, | |
{ filecode: '48075', | |
filedate: '20180429', | |
amountinfile: '97' }, | |
{ filecode: '48051', | |
filedate: '20180428', | |
amountinfile: '101' }, | |
{ filecode: '48027', | |
filedate: '20180427', | |
amountinfile: '48' }, | |
{ filecode: '48003', | |
filedate: '20180426', | |
amountinfile: '143' }, | |
{ filecode: '47978', | |
filedate: '20180425', | |
amountinfile: '1' }, | |
{ filecode: '47979', | |
filedate: '20180425', | |
amountinfile: '80' }, | |
{ filecode: '47954', | |
filedate: '20180424', | |
amountinfile: '1' }, | |
{ filecode: '47955', | |
filedate: '20180424', | |
amountinfile: '79' }, | |
{ filecode: '47924', | |
filedate: '20180423', | |
amountinfile: '1' }, | |
{ filecode: '47925', | |
filedate: '20180423', | |
amountinfile: '90' }, | |
{ filecode: '47900', | |
filedate: '20180422', | |
amountinfile: '6' }, | |
{ filecode: '47901', | |
filedate: '20180422', | |
amountinfile: '117' }, | |
{ filecode: '47876', | |
filedate: '20180421', | |
amountinfile: '2' }, | |
{ filecode: '47877', | |
filedate: '20180421', | |
amountinfile: '130' }, | |
{ filecode: '47850', | |
filedate: '20180420', | |
amountinfile: '1' }, | |
{ filecode: '47851', | |
filedate: '20180420', | |
amountinfile: '159' }, | |
{ filecode: '47829', | |
filedate: '20180419', | |
amountinfile: '1' }, | |
{ filecode: '47830', | |
filedate: '20180419', | |
amountinfile: '125' }, | |
{ filecode: '47805', | |
filedate: '20180418', | |
amountinfile: '1' }, | |
{ filecode: '47806', | |
filedate: '20180418', | |
amountinfile: '74' }, | |
{ filecode: '47782', | |
filedate: '20180417', | |
amountinfile: '81' }, | |
{ filecode: '47752', | |
filedate: '20180416', | |
amountinfile: '54' }, | |
{ filecode: '47728', | |
filedate: '20180415', | |
amountinfile: '150' } | |
]; | |
//Array of files I already have | |
let alreadyHaveFiles = [ | |
'48099','48074','48075','48051','48027','48003','47978','47979','47954','47955', | |
'47924','47925','47900', '47901', '47876','47877', '47850' | |
]; | |
//See how many files I already have | |
console.log(`Number of files I already have: ${alreadyHaveFiles.length}`) | |
//Create an independent copy of the allFiles | |
let tempFiles = allFiles.slice(0); | |
//Check length of allfiles and tempFiles before | |
console.log(`Before:\n Files: ${allFiles.length} TempFiles: ${tempFiles.length}`); | |
//Remove files that I already have from tempFiles and leave allFiles untouched | |
allFiles.forEach((element) => { | |
if(alreadyHaveFiles.includes(element['filecode'])){ | |
let removeIndex = tempFiles.map((item) => item['filecode']).indexOf(element['filecode']); | |
tempFiles.splice(removeIndex, 1); | |
} | |
}); | |
//Check length of allFiles and tempFiles after | |
console.log(`After:\n Files: ${allFiles.length} TempFiles: ${tempFiles.length}`) | |
//console.log shows the following | |
// Number of files I already have: 17 | |
// Before: | |
// Files: 25 TempFiles: 25 | |
// After: | |
// Files: 25 TempFiles: 8 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment