我需要将“月份名称”转换为该月的整数(并希望避免使用较大的switch语句)。有任何想法吗?
最佳答案
只需在该月中创建一个日期,进行解析,然后像这样使用getMonth()
function convertMonthNameToNumber(monthName) {
var myDate = new Date(monthName + " 1, 2000");
var monthDigit = myDate.getMonth();
return isNaN(monthDigit) ? 0 : (monthDigit + 1);
}
alert(convertMonthNameToNumber("August")); //returns 8
alert(convertMonthNameToNumber("Augustsss")); //returns 0 (or whatever you change the default too)
alert(convertMonthNameToNumber("Aug")); //returns 8 - Bonus!
alert(convertMonthNameToNumber("AuGust")); //returns 8 - Casing is irrelevant!