alert(dateObj)
donne Wed Dec 30 2009 00:00:00 GMT+0800
Comment obtenir la date au format 2009/12/30
?
alert(dateObj)
donne Wed Dec 30 2009 00:00:00 GMT+0800
Comment obtenir la date au format 2009/12/30
?
Réponses:
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;
ou vous pouvez définir une nouvelle date et donner les valeurs ci-dessus
getMonth
et getUTCMonth
?
getUTCDay()
doit être remplacé par getUTCDate()
, puisque day est le numéro du jour de la semaine (0-6) et date est le numéro du jour du mois (1-31).
var dt = new Date();
dt.getFullYear() + "/" + (dt.getMonth() + 1) + "/" + dt.getDate();
Étant donné que l'indice du mois est basé sur 0, vous devez l'incrémenter de 1.
Éditer
Pour une liste complète des fonctions d'objet de date, voir
getMonth()
Renvoie le mois (0-11) à la date spécifiée en fonction de l'heure locale.
getUTCMonth()
Renvoie le mois (0-11) à la date spécifiée en fonction de l'heure universelle.
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"
Je vous suggère d'utiliser Moment.js http://momentjs.com/
Ensuite, vous pouvez faire:
moment(new Date()).format("YYYY/MM/DD");
Remarque: vous n'avez pas vraiment besoin d'ajouter new Date()
si vous voulez le TimeDate actuel, je l'ai seulement ajouté comme référence que vous pouvez lui passer un objet date. pour la TimeDate actuelle, cela fonctionne également:
moment().format("YYYY/MM/DD");
Info
Si un mois et une date à 2 chiffres sont souhaités (2016/01/01 vs 2016/1/1)
code
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);
production
06/10/2016
violon
https://jsfiddle.net/Hastig/1xuu7z7h/
crédit
Plus d'informations et crédit à cette réponse
plus
Pour en savoir plus sur .slice
l' éditeur d'essayer vous-même à w3schools, vous m'avez aidé à mieux comprendre comment l'utiliser.
Bon complément de mise en forme: http://blog.stevenlevithan.com/archives/date-time-format .
Avec cela, vous pourriez écrire:
var now = new Date();
now.format("yyyy/mm/dd");
Utilisez les méthodes d'obtention de date.
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();
FORMAT EUROPE (ANGLAIS / ESPAGNOL)
Si vous avez également besoin de la date du jour, vous pouvez utiliser celle-ci.
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);
* Pour le format espagnol, il suffit de traduire la variable WEEK.
var week = new Array('Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado');
Sortie: lundi - 16/11/2015 14:24
Avec la réponse acceptée, le 1er Janvier sera affiché comme ceci: 2017/1/1
.
Si vous préférez 2017/01/01
, vous pouvez utiliser:
var dt = new Date();
var date = dt.getFullYear() + '/' + (((dt.getMonth() + 1) < 10) ? '0' : '') + (dt.getMonth() + 1) + '/' + ((dt.getDate() < 10) ? '0' : '') + dt.getDate();
Pourquoi pas simplement?
dateObj.toISOString().slice(0, 10) // YYYY-MM-DD
Vérifiez ici:
const date1 = new Date('December 17, 1995 03:24:00');
console.log(date1.toISOString().slice(0, 10))
Voici une façon plus propre d'obtenir l'année / mois / jour avec des modèles de littéraux:
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());
Pour référence, vous pouvez voir les détails ci-dessous
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)
// Renvoie les minutes (0-59) new Date (). GetMonth () // Renvoie le mois (0-11) new Date (). GetSeconds () // Renvoie les secondes (0-59) new Date () .getTime () // Renvoie l'heure (millisecondes depuis le 1er janvier 1970)
Vous pouvez simplement utiliser ce code d'une ligne pour obtenir la date au format année-mois-date
var date = new Date().getFullYear() + "-" + new Date().getMonth() + 1 + "-" + new Date().getDate();
J'utilise ceci qui fonctionne si vous lui passez un horodatage date obj ou js:
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 a introduit des groupes de capture d'expression régulière que vous pouvez utiliser pour capturer le jour, le mois et l'année:
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);
L'avantage de cette approche est la possibilité de saisir le jour, le mois et l'année pour les formats de date de chaîne non standard.
Réf. https://www.freecodecamp.org/news/es9-javascripts-state-of-art-in-2018-9a350643f29c/