I am trying to find the number of days between the current date and file creation date. The idea is to delete the files that are not more than 4 days from current date.
I used the below app script but the difference gives me a 'NaN' output in console
function iterateFolder() {
var folder = DriveApp.getFolderById('XXXXXXXXXXX');
console.log('Folder: ', folder.getName());
var files = folder.getFiles();
var currentDate = new Date();
var modifiedDate = Utilities.formatDate(currentDate, 'Australia/Adelaide', 'dd-MM-yyyy');
console.log('Now: ', modifiedDate);
while(files.hasNext()){
var file = files.next();
var createdDate = file.getDateCreated();
var modifiedCreatedDate = Utilities.formatDate(createdDate, 'Australia/Adelaide', 'dd-MM-yyyy');
console.log('File: ', file.getName(), ' Created On: ', modifiedCreatedDate);
console.log('Difference: ', modifiedDate - modifiedCreatedDate); // Gives NaN
}
}
This modified version of your code will give you the difference(in days) between the two dates
function iterateFolder() {
var folder = DriveApp.getFolderById('replace_with_your_drive_folder_id');
console.log('Folder: ', folder.getName());
var files = folder.getFiles();
var currentDate = new Date();
console.log('Now: ', currentDate);
while (files.hasNext()) {
var file = files.next();
var createdDate = file.getDateCreated();
console.log('File: ', file.getName(), ' Created On: ', createdDate);
// Calculate the difference in milliseconds
var differenceMillis = currentDate - createdDate;
// Convert milliseconds to days
var differenceDays = Math.floor(differenceMillis / (1000 * 60 * 60 * 24));
console.log('Difference in days: ', differenceDays);
}
}
References: Calculate difference between dates