从扩展 ISO 格式中去除毫秒

Stripping milliseconds from Extended ISO format

Javascript 的 Date.toISOString() 函数 returns 以下格式的字符串:

YYYY-MM-DDTHH:mm:ss.sssZ

如何从这样的字符串中去掉毫秒数?也就是说,我想要一个这种格式的字符串:

YYYY-MM-DDTHH:mm:ssZ

你将它保存到一个变量中然后执行此操作。

//I'm calling the variable date
var startMSindex = date.indexOf(".");
date = date.subString(0, startMSindex) + "Z";
var date = new Date();
var formatted = date.toISOString().split('.')[0] + 'Z';
console.log(formatted);

由于 ISO 日期格式在毫秒部分之前是固定宽度的,因此可以使用“.”进行拆分。就是简单地使用 substring,然后替换 "Z" 时区指示符:

var d = new Date()

d.toISOString().substring(0,19)+'Z'

"2015-07-01T21:27:45Z"