Ответ 1
Простой способ:
console.log( now.toISOString().split('.')[0]+"Z" );
Вот стандартный способ сериализации даты как строка ISO 8601 в JavaScript:
var now = new Date();
console.log( now.toISOString() );
// outputs '2015-12-02T21:45:22.279Z'
Мне нужен только тот же вывод, но без миллисекунд. Как я могу вывести 2015-12-02T21:45:22Z
?
Простой способ:
console.log( now.toISOString().split('.')[0]+"Z" );
Это решение:
var now = new Date();
var str = now.toISOString();
var res = str.replace(/\.[0-9]{3}/, '');
alert(res);
Находит. (точка) и удаляет 3 символа.
Используйте срез для удаления нежелательной части
var now = new Date();
alert( now.toISOString().slice(0,-5)+"Z");
или, возможно, переписать его этим? (это измененный polyfill из здесь)
function pad(number) {
if (number < 10) {
return '0' + number;
}
return number;
}
Date.prototype.toISOString = function() {
return this.getUTCFullYear() +
'-' + pad(this.getUTCMonth() + 1) +
'-' + pad(this.getUTCDate()) +
'T' + pad(this.getUTCHours()) +
':' + pad(this.getUTCMinutes()) +
':' + pad(this.getUTCSeconds()) +
'Z';
};