提问者:小点点

如何将ISO日期转换为日期格式yyyy mm dd?


如何从ISO获取格式为yyyy mm dd的日期

我的

2013-03-10T02:00:00Z

我怎样才能得到以下信息?

2013-03-10

共3个答案

匿名用户

只需裁剪字符串:

var date = new Date("2013-03-10T02:00:00Z");
date.toISOString().substring(0, 10);

或者如果您只需要字符串外的日期。

var strDate = "2013-03-10T02:00:00Z";
strDate.substring(0, 10);

匿名用户

试试这个

date = new Date('2013-03-10T02:00:00Z');
date.getFullYear()+'-' + (date.getMonth()+1) + '-'+date.getDate();//prints expected format.

更新:-

正如评论中指出的,我正在更新答案,以便在需要时打印日期和月份的前导零。

date = new Date('2013-08-03T02:00:00Z');
year = date.getFullYear();
month = date.getMonth()+1;
dt = date.getDate();

if (dt < 10) {
  dt = '0' + dt;
}
if (month < 10) {
  month = '0' + month;
}

console.log(year+'-' + month + '-'+dt);

匿名用户

你可以马上结帐。js、Luxon、日期fns或日期。js用于漂亮的日期处理。

或者只提取ISO字符串的第一部分,它已经包含您想要的内容。下面是在T上拆分的示例:

"2013-03-10T02:00:00Z".split("T")[0] // "2013-03-10"

另一个例子是提取前10个字符:

"2013-03-10T02:00:00Z".substr(0, 10) // "2013-03-10"