指示 JavaScript 的 Date 读取日期字符串 dd/mm/yyyy 而不是 mm/dd/yyyy



我想通过JavaScript date((将日期字符串01/04/2022解析为April 1st,而不是像January 4th那样的

有没有什么方法可以强制/指示javascript的Date()将日期字符串读取为dd/mm/yyyy而不是mm/dd/yyyy

new Date('01/04/2022') // returns Tue Jan 04 2022 00:00:00 GMT+0100 (Central European Standard Time)

感谢

创建一个函数来完成的工作是很琐碎的

const dmy = s => new Date(...s.split(/D+/).reverse().map((v,i)=>+v-(i%2)))
console.log(dmy('01/04/2022').toString())

您可以将其添加到Date。。。所以你总是知道在哪里可以找到

Date.dmy = s => new Date(...s.split(/D+/).reverse().map((v,i)=>+v-(i%2)))
console.log(Date.dmy('01/04/2022').toString())
console.log(Date.dmy('01/13/2022').toString()) // oops, didn't fail

但是,在无效日期上,上述操作不会失败

要做到这一点,请像这样写

Date.dmy = s => {
const a = s.split('/');
return new Date(`${a[1]}/${a[0]}/${a[2]}`);
}
console.log(Date.dmy('01/04/2022').toString())
console.log(Date.dmy('01/13/2022').toString())

您可以使用法语格式:

const start = Date.now();
const date = new Date(start);
const formatted = date.toLocaleDateString("fr-FR")

解决方案可能是一个字符串,希望以下代码能有所帮助:

let day = new Date().getDate()
let months = new Date().getMonth();
let year = new Date().getFullYear();
const formatDate = (day, months, year) =>{
let total = ""
let error = false
let errorMessage = ""
if(day != null && months != null && year != null){
error = false
if(months <= 9){
total = `0${day}/0${months}/${year}`
}else{
total = `0${day}/${months}/${year}`;
}
}else{
error = true
errorMessage = "ERROR, in day, month, or year"
return errorMessage
}
return total
}
// Calling Function
console.log(formatDate(day, months, year))

相关内容

  • 没有找到相关文章