How to add days to today in day-month-year format? I tried this code but additionally get the time zone and month in the short word name. I want to receive, for example, August 12, 2023 here is the code:
Date.prototype.addDays = function(days) {
var date = new Date(this.valueOf());
date.setDate(date.getDate() + days);
return date;
}
var date = new Date();
console.log(date.addDays(5));
To get the format: Month Day, Year, Simply use ECMAScript Internationalization API:
return date.toLocaleString('en-us',{month:'long', year:'numeric', day:'numeric'})
month:'long' //August
day:'numeric' //12
year:'numeric' //2023
Note: 'long' uses the full name of the month, 'short' for the short name,
Create an array of months
var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
In the function Date.prototype.addDays, return the date string as
return months[date.getMonth()] + " " + date.getDate() + ", " + date.getFullYear();
Output:
July 15, 2022
You are adding 2 dates in a correct way, there is only problem in outputting the error. You can format date as follow based on this answer:
Date.prototype.addDays = function(days) {
var date = new Date(this.valueOf());
date.setDate(date.getDate() + days);
// return formatted date
var options = {year: 'numeric', month: 'long', day: 'numeric' };
return date.toLocaleDateString("en-US", options);
}
var date = new Date();
console.log(date.addDays(5));