Je reçois une variable chaîne ayant la date au format 6/1/2012
, je souhaite la convertir en 01 Jun 2012
.JS FIDDLE DEMO
Code j'ai essayé:
var t_sdate="6/1/2012";
var sptdate = String(t_sdate).split("/");
var myMonth = sptdate[0];
var myDay = sptdate[1];
var myYear = sptdate[2];
var combineDatestr = myYear + "/" + myMonth + "/" + myDay;
var dt = new Date(combineDatestr);
var formatedDate= dt.format("dd mmm yyyy")
alert(formatedDate);
Obtenir la sortie en tant que 01 000 2012
, obligatoire en tant que 01 Jun 2012
Essaye ça:
function getFormattedDate(input) {
var pattern = /(.*?)\/(.*?)\/(.*?)$/;
var result = input.replace(pattern,function(match,p1,p2,p3){
var months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
return (p2<10?"0"+p2:p2) + " " + months[(p1-1)] + " " + p3;
});
alert(result);
}
getFormattedDate("6/1/2013");
Étant donné que d'autres utilisateurs ont déjà mentionné que "format"
n'est pas une méthode standard de l'objet Date. Vous pouvez le faire sans utiliser aucune méthode de formatage (même s'il en existe)
var t_sdate = "6/1/2012";
var sptdate = String(t_sdate).split("/");
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
var myMonth = sptdate[0];
var myDay = sptdate[1];
var myYear = sptdate[2];
var combineDatestr = myDay + " " + months[myMonth - 1] + " " + myYear;
alert(combineDatestr);
return $.datepicker.formatDate('dd-M-yy', new Date(dateVal)); //01-Dec-2014
Vous pouvez utiliser javascript Intl https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat
L'exemple suivant montrera quelque chose comme Nov 02, 2017
console.log(new Intl.DateTimeFormat('en-EN', { year: 'numeric', month: 'short', day: 'numeric' }).format(new Date()));
Milton.-