“Date.toLocaleString()”有哪些选项?

17
根据MDN文档中对Date.toLocaleString()的说明,第二个参数是一个options参数:
toLocaleString(locales, options)

他们在一个例子中使用了它:

let date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));

// Request a weekday along with a long date
let options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };

console.log(date.toLocaleString('de-DE', options));

我的问题是,options参数可能具有哪些属性?


此方法的可选参数的含义在ECMA-402规范中定义;不包括ECMA-402支持的实现不得将这些参数位置用于其他任何目的。 - PM 77-1
2个回答

16

这些属性与Intl.DateTimeFormat()构造函数的属性相同,其MDN文档提供了每个有效属性和解释的列表。

可能的属性如下:

  • dateStyle日期样式
  • timeStyle时间样式
  • calendar日历
  • dayPeriod白天/黑夜
  • numberingSystem数字系统
  • localeMatcher语言环境匹配
  • timeZone时区
  • hour1212小时制
  • hourCycle小时制
  • formatMatcher格式匹配
  • weekday星期几
  • era纪元
  • year年份
  • month月份
  • day日期
  • hour小时
  • minute分钟
  • second秒数
  • fractionalSecondDigits小数秒位数
  • timeZoneName时区名称

请参阅MDN文档查看每个属性的可能值和行为。


嗨@Spectric,为什么我找不到关于toLocaleString方法中已使用的选项>样式和货币的文档... :( 有没有更新的文档?提前感谢您。 - Juan Ruiz de Castilla
1
@JuanRuizdeCastilla Date.toLocaleString 的选项中没有包括 style 属性。你可能把它和 Number.toLocaleString 混淆了。 - Spectric

0
interface DateTimeFormatOptions {
    formatMatcher?: "basic" | "best fit" | "best fit" | undefined;
    dateStyle?: "full" | "long" | "medium" | "short" | undefined;
    timeStyle?: "full" | "long" | "medium" | "short" | undefined;
    dayPeriod?: "narrow" | "short" | "long" | undefined;
    fractionalSecondDigits?: 1 | 2 | 3 | undefined;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接