Formatear la fecha de JavaScript como aaaa-mm-dd
Tengo una cita con el formato Sun May 11,2014
. ¿ Cómo puedo convertirlo para 2014-05-11
usar JavaScript?
function taskDate(dateMilli) {
var d = (new Date(dateMilli) + '').split(' ');
d[2] = d[2] + ',';
return [d[0], d[1], d[2], d[3]].join(' ');
}
var datemilli = Date.parse('Sun May 11,2014');
console.log(taskDate(datemilli));
Expandir fragmento
El código anterior me da el mismo formato de fecha sun may 11,2014
. ¿Cómo puedo arreglar esto?
Aceptado
Simplemente aproveche el método integrado toISOString
que lleva su fecha al formato ISO 8601:
let yourDate = new Date()
yourDate.toISOString().split('T')[0]
Donde yourDate es su objeto de fecha.
Editar : @exbuddha escribió esto para manejar la zona horaria en los comentarios :
const offset = yourDate.getTimezoneOffset()
yourDate = new Date(yourDate.getTime() - (offset*60*1000))
return yourDate.toISOString().split('T')[0]
Tu puedes hacer:
function formatDate(date) {
var d = new Date(date),
month = '' + (d.getMonth() + 1),
day = '' + d.getDate(),
year = d.getFullYear();
if (month.length < 2)
month = '0' + month;
if (day.length < 2)
day = '0' + day;
return [year, month, day].join('-');
}
console.log(formatDate('Sun May 11,2014'));
Expandir fragmento
Ejemplo de uso:
console.log(formatDate('Sun May 11,2014'));
Producción:
2014-05-11
Demostración en JSFiddle: http://jsfiddle.net/abdulrauf6182012/2Frm3/
Utilizo esta forma para obtener la fecha en formato aaaa-mm-dd :)
var todayDate = new Date().toISOString().slice(0, 10);
console.log(todayDate);
Expandir fragmento