[英]Get Date in Consistent Format
I am having a function which return the date based on some condition (last 30 day).我有一个 function 根据某些条件(过去 30 天)返回日期。
const start = new Date(); start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); const startTime = start.toLocaleString().split(",")[0]; console.log(startTime)
In Mac OS,I am getting the output in dd/mm/yyyy format (which is the desired format).在 Mac OS 中,我得到了 dd/mm/yyyy 格式的 output(这是所需的格式)。
But in Windows, I am getting the output in mm/dd/yyyy.但是在 Windows 中,我得到了 mm/dd/yyyy 格式的 output。 How can I make it consistent irespective of platform.
无论平台如何,如何使其保持一致。 Desired format is dd/mm/yyy
所需格式为 dd/mm/yyy
Use toLocaleDateString
with 'en-GB'将
toLocaleDateString
与“en-GB”一起使用
const start = new Date(); start.setDate(start.getDate() - 30) const startTime = start.toLocaleDateString('en-GB'); console.log(startTime)
Use toLocaleDateString with locale (and optional options)将toLocaleDateString 与语言环境(和可选选项)一起使用
The en-GB locale seems what you want here en-GB 语言环境似乎是您想要的
const options = {year: 'numeric', month: 'numeric', day: 'numeric' }; // default options const start = new Date(); start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); console.log(start.toLocaleDateString('en-GB', options));
function SetShortDateTime(d) {
const monthList = [
"01",
"02",
"03",
"04",
"05",
"06",
"07",
"08",
"09",
"10",
"11",
"12"
];
const yr = d.getFullYear();
const mnt = monthList[d.getMonth()];
const day = d.getDate() < 9 ? "0" + d.getDate() : d.getDate();
return [day, mnt, yr].join("/") ;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.