alert(dateObj)
da Wed Dec 30 2009 00:00:00 GMT+0800
¿Cómo obtener la fecha en formato 2009/12/30
?
alert(dateObj)
da Wed Dec 30 2009 00:00:00 GMT+0800
¿Cómo obtener la fecha en formato 2009/12/30
?
Respuestas:
var dateObj = new Date();
var month = dateObj.getUTCMonth() + 1; //months from 1-12
var day = dateObj.getUTCDate();
var year = dateObj.getUTCFullYear();
newdate = year + "/" + month + "/" + day;
o puede establecer una nueva fecha y dar los valores anteriores
getMonth
y getUTCMonth
?
getUTCDay()
debe reemplazarse por getUTCDate()
, ya que día es el número del día de la semana (0-6) y fecha es el número del día del mes (1-31).
var dt = new Date();
dt.getFullYear() + "/" + (dt.getMonth() + 1) + "/" + dt.getDate();
Como el índice del mes está basado en 0, debe incrementarlo en 1.
Editar
Para obtener una lista completa de funciones de objeto de fecha, consulte
getMonth()
Devuelve el mes (0-11) en la fecha especificada según la hora local.
getUTCMonth()
Devuelve el mes (0-11) en la fecha especificada según la hora universal.
new Date().toISOString()
"2016-02-18T23:59:48.039Z"
new Date().toISOString().split('T')[0];
"2016-02-18"
new Date().toISOString().replace('-', '/').split('T')[0].replace('-', '/');
"2016/02/18"
new Date().toLocaleString().split(',')[0]
"2/18/2016"
Te sugiero que uses Moment.js http://momentjs.com/
Entonces puedes hacer:
moment(new Date()).format("YYYY/MM/DD");
Nota: en realidad no es necesario agregar new Date()
si desea la fecha y hora actual, solo la agregué como referencia para que pueda pasarle un objeto de fecha. para la fecha actual, esto también funciona:
moment().format("YYYY/MM/DD");
informacion
Si se desea un mes y una fecha de 2 dígitos (2016/01/01 vs 2016/1/1)
código
var dateObj = new Date();
var month = ('0' + (dateObj.getMonth() + 1)).slice(-2);
var date = ('0' + dateObj.getDate()).slice(-2);
var year = dateObj.getFullYear();
var shortDate = year + '/' + month + '/' + date;
alert(shortDate);
salida
06/10/2016
violín
https://jsfiddle.net/Hastig/1xuu7z7h/
crédito
Más información y crédito a esta respuesta
más
Para obtener más información sobre .slice
el editor Pruébelo usted mismo en w3schools, me ayudó a comprender mejor cómo usarlo.
Complemento de formato agradable: http://blog.stevenlevithan.com/archives/date-time-format .
Con eso podrías escribir:
var now = new Date();
now.format("yyyy/mm/dd");
Use los métodos de obtención de fecha.
http://www.tizag.com/javascriptT/javascriptdate.php
http://www.htmlgoodies.com/beyond/javascript/article.php/3470841
var dateobj= new Date() ;
var month = dateobj.getMonth() + 1;
var day = dateobj.getDate() ;
var year = dateobj.getFullYear();
FORMATO EUROPA (INGLÉS / ESPAÑOL)
I también necesita obtener el día actual, puede usar este.
function getFormattedDate(today)
{
var week = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');
var day = week[today.getDay()];
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
var hour = today.getHours();
var minu = today.getMinutes();
if(dd<10) { dd='0'+dd }
if(mm<10) { mm='0'+mm }
if(minu<10){ minu='0'+minu }
return day+' - '+dd+'/'+mm+'/'+yyyy+' '+hour+':'+minu;
}
var date = new Date();
var text = getFormattedDate(date);
* Para el formato español, solo traduzca la variable WEEK.
var week = new Array('Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado');
Salida: lunes - 16/11/2015 14:24
¿Por qué no simplemente?
dateObj.toISOString().slice(0, 10) // YYYY-MM-DD
Chequea aquí:
const date1 = new Date('December 17, 1995 03:24:00');
console.log(date1.toISOString().slice(0, 10))
Aquí hay una forma más limpia de obtener Año / Mes / Día con literales de plantilla:
var date = new Date();
var formattedDate = `${date.getFullYear()}/${(date.getMonth() + 1)}/${date.getDate()}`;
console.log(formattedDate);
let dateObj = new Date();
let myDate = (dateObj.getUTCFullYear()) + "/" + (dateObj.getMonth() + 1)+ "/" + (dateObj.getUTCDate());
Para referencia, puede ver los detalles a continuación
new Date().getDate() // Return the day as a number (1-31)
new Date().getDay() // Return the weekday as a number (0-6)
new Date().getFullYear() // Return the four digit year (yyyy)
new Date().getHours() // Return the hour (0-23)
new Date().getMilliseconds() // Return the milliseconds (0-999)
new Date().getMinutes() // Return the minutes (0-59)
new Date().getMonth() // Return the month (0-11)
new Date().getSeconds() // Return the seconds (0-59)
new Date().getTime() // Return the time (milliseconds since January 1, 1970)
let dateObj = new Date();
let myDate = (dateObj.getUTCFullYear()) + "/" + (dateObj.getMonth() + 1)+ "/" + (dateObj.getUTCDate());
console.log(myDate)
// Devuelve los minutos (0-59) nueva Fecha (). GetMonth () // Devuelve el mes (0-11) nueva Fecha (). GetSeconds () // Devuelve los segundos (0-59) nueva Fecha () .getTime () // Devuelve el tiempo (milisegundos desde el 1 de enero de 1970)
Simplemente puede usar este código de una línea para obtener la fecha en formato año-mes-fecha
var date = new Date().getFullYear() + "-" + new Date().getMonth() + 1 + "-" + new Date().getDate();
Estoy usando esto, que funciona si le pasa una fecha obj o js timestamp:
getHumanReadableDate: function(date) {
if (date instanceof Date) {
return date.getDate() + "/" + (date.getMonth() + 1) + "/" + date.getFullYear();
} else if (isFinite(date)) {//timestamp
var d = new Date();
d.setTime(date);
return this.getHumanReadableDate(d);
}
}
ES2018 introdujo grupos de captura de expresiones regulares que puede usar para capturar día, mes y año:
const REGEX = /(?<year>[0-9]{4})-(?<month>[0-9]{2})-(?<day>[0-9]{2});
const results = REGEX.exec('2018-07-12');
console.log(results.groups.year);
console.log(results.groups.month);
console.log(results.groups.day);
La ventaja de este enfoque es la posibilidad de capturar día, mes y año para formatos de fecha de cadena no estándar.
Árbitro. https://www.freecodecamp.org/news/es9-javascripts-state-of-art-in-2018-9a350643f29c/