如何从JavaScript中的日期对象生成月份名称(例如:Oct / October)?
var objDate = new Date("10/11/2019");
现在可以使用ECMAScript国际化API来做到这一点:
const date = new Date(2019, 10, 10); // 2019-11-10 const month = date.toLocaleString('default', { month: 'long' }); console.log(month);
'long'使用月份的全名,'short'简称和'narrow'更短的版本(例如字母语言中的第一个字母)。
'long'
'short'
'narrow'
你可以将语言环境从浏览器更改'default'为任何你喜欢的语言环境(例如'en-us'),它将使用该语言/国家/地区的正确名称。
'default'
'en-us'
使用toLocaleStringapi时,你每次必须传递语言环境和选项。如果要在多个不同的日期使用相同的语言环境信息和格式选项,则可以Intl.DateTimeFormat改用:
toLocaleStringapi
Intl.DateTimeFormat
const formatter = new Intl.DateTimeFormat('fr', { month: 'short' }); const month1 = formatter.format(new Date()); const month2 = formatter.format(new Date(2003, 5, 12)); console.log(`${month1} and ${month2}`); // current month in French and "juin".