我有JavaScript在dd-mmm-yyyy中返回日期格式
var d=new Date();
var my_month=new Date();
var month_name=new\nArray(12);
month_name[0]="Jan";\nmonth_name[1]="Feb"; month_name[2]="Mar";\nmonth_name[3]="Apr"; month_name[4]="May";\nmonth_name[5]="Jun"; month_name[6]="Jul";\nmonth_name[7]="Aug"; month_name[8]="Sep";\nmonth_name[9]="Oct"; month_name[10]="Nov";\nmonth_name[11]="Dec";
d.getDate()+'-'+\n((month_name[my_month.getMonth()]))+'-'+d.getFullYear();
我在selenium ide中使用它来格式化当前日期,它工作正常。
但我想将当前日期格式化为2013年9月的第二天。如何在不同日期引入st,nd,rd和th来获得此格式?
答案 0 :(得分:0)
我修改了你的代码如下:
var d=new Date();
var month_name=new Array(12);
month_name[0]="January";
month_name[1]="February";
month_name[2]="March";
month_name[3]="April";
month_name[4]="May";
month_name[5]="June";
month_name[6]="July";
month_name[7]="August";
month_name[8]="September";
month_name[9]="October";
month_name[10]="November";
month_name[11]="December";
var month_day = d.getDay() + 1;
var Nth = "th";
if(month_day === 1 || month_day === 21 || month_day === 31){
Nth = "st";
}
else if(month_day === 2 || month_day === 22){
Nth = "nd";
}
else if(month_day === 3 || month_day === 23){
Nth = "rd";
}
alert(month_day+Nth+' day of '+(month_name[d.getMonth()])+' '+d.getFullYear());
要在JSFiddle中查看代码,click here。