Intl.DurationFormat() 构造函数
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Intl.DurationFormat() 构造函数创建 Intl.DurationFormat 对象。
¥The Intl.DurationFormat() constructor creates Intl.DurationFormat objects.
语法
参数
¥Parameters
localesOptional-
带有 BCP 47 语言标记或
Intl.Locale实例的字符串,或此类区域设置标识符的数组。当传递undefined或不支持任何指定的区域设置标识符时,将使用运行时的默认区域设置。有关locales论证的一般形式和解释,请参阅Intl主页参数说明。允许使用以下 Unicode 扩展键:
nu-
参见
numberingSystem。
该键也可以通过
options设置(如下所列)。当两者都设置时,options属性优先。 optionsOptional-
包含以下属性的对象,按检索顺序排列(所有属性都是可选的):
localeMatcher-
要使用的区域设置匹配算法。可能的值为
"lookup"和"best fit";默认为"best fit"。有关此选项的信息,请参阅 区域设置识别和协商。 numberingSystem-
用于数字格式化的编号系统,例如
"arab"、"hans"、"mathsans"等。有关支持的编号系统类型的列表,请参阅Intl.Locale.prototype.getNumberingSystems()。该选项也可以通过nuUnicode 扩展键设置;如果两者都提供,则此options属性优先。 style-
格式化持续时间的样式。可能的值为:
years-
格式化年份的样式。可能的值为
"long"、"short"和"narrow";如果不是"digital",则默认为options.style,否则默认为"short"。 yearsDisplay-
是否始终显示年份,或者仅在非零时显示。可能的值为
"always"和"auto";如果未指定years,则默认为"auto",否则为"always"。 months-
格式化月份的样式。可能的值为
"long"、"short"和"narrow";如果不是"digital",则默认为options.style,否则默认为"short"。 monthsDisplay-
是否始终显示月份,或者仅在非零时显示。可能的值为
"always"和"auto";如果未指定months,则默认为"auto",否则为"always"。 weeks-
格式化周的样式。可能的值为
"long"、"short"和"narrow";如果不是"digital",则默认为options.style,否则默认为"short"。 weeksDisplay-
是否始终显示周,或者仅在非零时显示。可能的值为
"always"和"auto";如果未指定weeks,则默认为"auto",否则为"always"。 days-
格式化日期的样式。可能的值为
"long"、"short"和"narrow";如果不是"digital",则默认为options.style,否则默认为"short"。 daysDisplay-
是否始终显示天数,或者仅在非零时显示。可能的值为
"always"和"auto";如果未指定days,则默认为"auto",否则为"always"。 hours-
格式化时间的样式。可能的值为
"long"、"short"、"narrow"、"numeric"和"2-digit";如果不是"digital",则默认为options.style,否则默认为"numeric"。 hoursDisplay-
是否始终显示小时,或者仅在非零时显示。可能的值为
"always"和"auto";如果未指定hours并且options.style不是"digital",则默认值为"auto",否则默认为"always"。 minutes-
格式化会议记录的样式。
- 如果
hours是"numeric"或"2-digit",则可能的值为"numeric"和"2-digit",并且"numeric"被归一化为"2-digit";默认为"numeric"。 - 否则,可能的值为
"long"、"short"、"narrow"、"numeric"和"2-digit";如果不是"digital",则默认为options.style,否则默认为"numeric"。
- 如果
minutesDisplay-
是否始终显示分钟,或者仅在非零时显示。可能的值为
"always"和"auto";如果未指定minutes并且options.style不是"digital",则默认值为"auto",否则默认为"always"。 seconds-
格式化秒的样式。
- 如果
minutes是"numeric"或"2-digit",则可能的值为"numeric"和"2-digit",并且"numeric"被归一化为"2-digit";默认为"numeric"。 - 否则,可能的值为
"long"、"short"、"narrow"、"numeric"和"2-digit";如果不是"digital",则默认为options.style,否则默认为"numeric"。
- 如果
secondsDisplay-
是否始终显示秒,或者仅在非零时显示秒。可能的值为
"always"和"auto";如果未指定seconds并且options.style不是"digital",则默认值为"auto",否则默认为"always"。 milliseconds-
格式化毫秒的样式。
- 如果
seconds是"numeric"或"2-digit",则唯一可能的值为"numeric";默认为"numeric"。 - 否则,可能的值为
"long"、"short"、"narrow"和"numeric";如果不是"digital",则默认为options.style,否则默认为"numeric"。
- 如果
millisecondsDisplay-
是否始终显示毫秒,或者仅在非零时显示。
- 如果
seconds是"numeric"或"2-digit",则唯一可能的值为"auto";当未指定milliseconds时,仅默认为"auto"。 - 否则,可能的值为
"always"和"auto";如果未指定milliseconds,则默认为"auto",否则为"always"。
- 如果
microseconds-
格式化微秒的样式。
- 如果
milliseconds是"numeric",则唯一可能的值为"numeric";默认为"numeric"。 - 否则,可能的值为
"long"、"short"、"narrow"和"numeric";如果不是"digital",则默认为options.style,否则默认为"numeric"。
- 如果
microsecondsDisplay-
是否始终显示微秒,或者仅在非零时显示。
- 如果
milliseconds是"numeric",则唯一可能的值为"auto";当未指定microseconds时,仅默认为"auto"。 - 否则,可能的值为
"always"和"auto";如果未指定microseconds,则默认为"auto",否则为"always"。
- 如果
nanoseconds-
格式化纳秒的样式。
- 如果
microseconds是"numeric",则唯一可能的值为"numeric";默认为"numeric"。 - 否则,可能的值为
"long"、"short"、"narrow"和"numeric";如果不是"digital",则默认为options.style,否则默认为"numeric"。
- 如果
nanosecondsDisplay-
是否始终显示纳秒,或者仅在非零时显示。
- 如果
microseconds是"numeric",则唯一可能的值为"auto";当未指定nanoseconds时,仅默认为"auto"。 - 否则,可能的值为
"always"和"auto";如果未指定nanoseconds,则默认为"auto",否则为"always"。
- 如果
fractionalDigits-
在输出中显示多少个小数秒数字。可能的值是从
0到9;默认值为undefined(根据需要包含尽可能多的小数位)。
例外情况
描述
¥Description
对于每个时间段,都会在底层构造一个 Intl.NumberFormat 对象。它使用以下选项(详细信息请参见 Intl.NumberFormat()):
¥For each time segment, an Intl.NumberFormat object is constructed under the hood. It uses the following options (see Intl.NumberFormat() for details):
numberingSystem:options.numberingSystem的值
当 milliseconds、microseconds 或 nanoseconds 使用 "numeric" 样式时,还使用以下选项:
¥When milliseconds, microseconds, or nanoseconds uses the "numeric" style, the following options are also used:
minimumFractionDigits:当options.fractionalDigits为undefined时为0,否则为options.fractionalDigitsmaximumFractionDigits:当options.fractionalDigits为undefined时为9,否则为options.fractionalDigitsroundingMode:"trunc"
当时间段使用 "2-digit" 样式时,还使用以下选项:
¥When the time segment uses the "2-digit" style, the following options are also used:
minimumIntegerDigits:2
当时间段使用 "long"、"short" 或 "narrow" 样式时,还使用以下选项:
¥When the time segment uses the "long", "short", or "narrow" style, the following options are also used:
style:当指定"long"、"short"或"narrow"时为"unit",否则为undefinedunit:当前格式化的单元("years"、"days"、"nanoseconds"等)unitDisplay:时间段样式的值("long"、"short"或"narrow")
示例
使用 Intl.DurationFormat() 构造函数
规范
| Specification |
|---|
| Intl.DurationFormat # sec-intl-durationformat-constructor |
浏览器兼容性
BCD tables only load in the browser
也可以看看
¥See also