格式和更改日期
Format and change date
我得到这样格式的日期:
18th February
添加周后,应该以相同的格式返回
示例:
input => 18th February + 7 weeks:
output => 31st March
我能够获取日期并添加周数,但我发现将日期格式化很复杂。
这是我现在拥有的:
let date = new Date(("18th February").replace(/st|rd|nd|th/g, ""))
let weeks = 7 * 7
let newDate = date.setDate(date.getDate() + weeks)
console.log(new Date(newDate))
//Output
2001-03-31T23:00:00.000Z
//Desire Output
//31st March
谢谢你的帮助。
我认为前端中的日期格式不是很好,所以库总是有帮助(比如 momentjs、datefnz 等)
但您可以将此添加到您的代码中以使其工作:
let date = new Date(("18th February").replace(/st|rd|nd|th/g, ""))
let weeks = 7 * 7
let newDate = new Date(date.setDate(date.getDate() + weeks))
let months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
let month = months[newDate.getMonth()]
let day = newDate.getDate()
function dayWithNth (d) {
if (d > 3 && d < 21) return `${d}th`;
switch (d % 10) {
case 1: return `${d}st`;
case 2: return `${d}nd`;
case 3: return `${d}rd`;
default: return `${d}th`;
}
}
console.log(`${dayWithNth(day)} ${month}`)
我得到这样格式的日期:
18th February
添加周后,应该以相同的格式返回 示例:
input => 18th February + 7 weeks:
output => 31st March
我能够获取日期并添加周数,但我发现将日期格式化很复杂。
这是我现在拥有的:
let date = new Date(("18th February").replace(/st|rd|nd|th/g, ""))
let weeks = 7 * 7
let newDate = date.setDate(date.getDate() + weeks)
console.log(new Date(newDate))
//Output
2001-03-31T23:00:00.000Z
//Desire Output
//31st March
谢谢你的帮助。
我认为前端中的日期格式不是很好,所以库总是有帮助(比如 momentjs、datefnz 等)
但您可以将此添加到您的代码中以使其工作:
let date = new Date(("18th February").replace(/st|rd|nd|th/g, ""))
let weeks = 7 * 7
let newDate = new Date(date.setDate(date.getDate() + weeks))
let months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
let month = months[newDate.getMonth()]
let day = newDate.getDate()
function dayWithNth (d) {
if (d > 3 && d < 21) return `${d}th`;
switch (d % 10) {
case 1: return `${d}st`;
case 2: return `${d}nd`;
case 3: return `${d}rd`;
default: return `${d}th`;
}
}
console.log(`${dayWithNth(day)} ${month}`)