• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.intl (国际化-Intl)
2
3<!--Kit: Localization Kit-->
4<!--Subsystem: Global-->
5<!--Owner: @yliupy-->
6<!--Designer: @sunyaozu-->
7<!--Tester: @lpw_work-->
8<!--Adviser: @Brilliantry_Rui-->
9
10本模块提供基础的应用国际化能力,包括时间日期格式化、数字格式化、排序等,相关接口在ECMA 402标准中定义。
11[I18N模块](js-apis-i18n.md)提供其他非ECMA 402定义的国际化接口,与本模块共同使用可提供完整的国际化支持能力。
12
13>  **说明:**
14>
15>  - 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
16>
17>  - 本模块接口依据[CLDR](https://cldr.unicode.org) 国际化数据库进行处理。随着CLDR演进,本模块接口处理结果可能发生变化。其中,API version 12对应[CLDR 42](https://cldr.unicode.org/index/downloads/cldr-42),详细数据变化请参考官方链接。
18>
19>  - 从API version 11开始,本模块部分接口支持在ArkTS卡片中使用。
20>
21>  - 从API version 12开始,本模块全接口支持在原子化服务中使用。
22
23
24## 导入模块
25
26```ts
27import { intl } from '@kit.LocalizationKit';
28```
29
30## Locale<sup>(deprecated)</sup>
31
32### 属性
33
34**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
35
36**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
37
38**系统能力**:SystemCapability.Global.I18n
39
40| 名称              | 类型      | 必填   | 说明                                       |
41| --------------- | ------- | -------- | ---------------------------------------- |
42| language        | string  | 是    | 与区域设置相关的语言,如:zh。取值遵循ISO&nbsp;639标准。 |
43| script          | string  | 是    | 区域语言的书写方式(脚本),如:Hans。取值遵循Unicode&nbsp;ISO&nbsp;15924标准。 |
44| region          | string  | 是    | 与区域设置相关的国家地区,如:CN。取值遵循ISO&nbsp;3166标准。 |
45| baseName        | string  | 是    | 区域对象的基本信息,由语言、脚本、国家地区组成,如:zh-Hans-CN。  |
46| caseFirst       | string  | 是    | 区域的排序规则是否考虑大小写,取值包括:<br>"upper":大写排前面。<br>"lower":小写排前面。<br>"false":使用区域默认的大小写排序规则。 |
47| calendar        | string  | 是    | 区域的日历信息,取值包括:<br>"buddhist",&nbsp;"chinese",&nbsp;"coptic","dangi",&nbsp;"ethioaa",&nbsp;"ethiopic",&nbsp;"gregory",&nbsp;"hebrew",&nbsp;"indian",&nbsp;"islamic",&nbsp;"islamic-umalqura",&nbsp;"islamic-tbla",&nbsp;"islamic-civil",&nbsp;"islamic-rgsa",&nbsp;"iso8601",&nbsp;"japanese",&nbsp;"persian",&nbsp;"roc",&nbsp;"islamicc"。<br>不同取值表示的含义请参考[设置日历和历法表1](../../internationalization/i18n-calendar.md)。 |
48| collation       | string  | 是    | 区域的排序规则,取值包括:<br>"big5han":拉丁字母使用的拼音排序。<br>"compat":兼容性排序,仅用于阿拉伯语。<br>"dict":词典风格排序,仅用于僧伽罗语。<br>"direct":二进制码点排序。<br>"ducet":按Unicode排序元素表排序。<br>"eor":按欧洲排序规则排序。<br>"gb2312":拼音排序,仅用于中文排序。<br>"phonebk":电话本风格排序。<br>"phonetic":发音排序。<br>"pinyin":拼音排序。<br>"reformed":瑞典语排序。<br>"searchjl":韩语初始辅音搜索的特殊排序。<br>"stroke":汉语的笔画排序。<br>"trad":传统风格排序,如西班牙语。<br>"unihan":统一汉字排序,用于日语、韩语、中文等汉字排序。<br>"zhuyin":注音排序,仅用于中文排序。 |
49| hourCycle       | string  | 是    | 区域的时制信息,取值包括:<br>"h11"、"h12"、"h23"、"h24"。<br>不同取值的显示效果可参考[附录表5](#附录)。 |
50| numberingSystem | string  | 是    | 区域使用的数字系统,取值包括:<br>"adlm",&nbsp;"ahom",&nbsp;"arab",&nbsp;"arabext",&nbsp;"bali",&nbsp;"beng",&nbsp;"bhks",&nbsp;"brah",&nbsp;"cakm",&nbsp;"cham",&nbsp;"deva",&nbsp;"diak",&nbsp;"fullwide",&nbsp;"gong",&nbsp;"gonm",&nbsp;"gujr",&nbsp;"guru",&nbsp;"hanidec",&nbsp;"hmng",&nbsp;"hmnp",&nbsp;"java",&nbsp;"kali",&nbsp;"khmr",&nbsp;"knda",&nbsp;"lana",&nbsp;"lanatham",&nbsp;"laoo",&nbsp;"latn",&nbsp;"lepc",&nbsp;"limb",&nbsp;"mathbold",&nbsp;"mathdbl",&nbsp;"mathmono",&nbsp;"mathsanb",&nbsp;"mathsans",&nbsp;"mlym",&nbsp;"modi",&nbsp;"mong",&nbsp;"mroo",&nbsp;"mtei",&nbsp;"mymr",&nbsp;"mymrshan",&nbsp;"mymrtlng",&nbsp;"newa",&nbsp;"nkoo",&nbsp;"olck",&nbsp;"orya",&nbsp;"osma",&nbsp;"rohg",&nbsp;"saur",&nbsp;"segment",&nbsp;"shrd",&nbsp;"sind",&nbsp;"sinh",&nbsp;"sora",&nbsp;"sund",&nbsp;"takr",&nbsp;"talu",&nbsp;"tamldec",&nbsp;"telu",&nbsp;"thai",&nbsp;"tibt",&nbsp;"tirh",&nbsp;"vaii",&nbsp;"wara",&nbsp;"wcho"。 |
51| numeric         | boolean | 是    | true表示对数字字符进行特殊的排序规则处理,false表示不对数字字符进行特殊的排序规则处理。<br>默认值:false。                      |
52
53### constructor<sup>(deprecated)</sup>
54
55constructor()
56
57> 从API version 8开始支持,从API version 20开始废弃,建议使用[i18n.System.getSystemLocaleInstance](js-apis-i18n.md#getsystemlocaleinstance20)替代。
58
59创建区域对象。
60
61**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
62
63**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
64
65**系统能力**:SystemCapability.Global.I18n
66
67**示例:**
68  ```ts
69  // 默认构造函数使用系统当前区域ID创建
70  let locale = new intl.Locale();
71  // 返回系统当前区域ID
72  let localeID = locale.toString();
73  ```
74
75### constructor<sup>(deprecated)</sup>
76
77constructor(locale: string, options?: LocaleOptions)
78
79> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.Locale() constructor](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/Locale)替代。
80
81创建区域对象。
82
83**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
84
85**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
86
87**系统能力**:SystemCapability.Global.I18n
88
89**参数:**
90
91| 参数名                  | 类型                               | 必填   | 说明                           |
92| -------------------- | -------------------------------- | ---- | ---------------------------- |
93| locale               | string                           | 是    | 表示区域ID的字符串,由语言、脚本、国家地区组成。|
94| options             | [LocaleOptions](#localeoptionsdeprecated) | 否    | 创建区域对象的选项。 |
95
96**示例:**
97  ```ts
98  // 创建zh-CN区域对象
99  let locale = new intl.Locale("zh-CN");
100  let localeID = locale.toString(); // localeID = "zh-CN"
101  ```
102
103
104### toString<sup>(deprecated)</sup>
105
106toString(): string
107
108> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.Locale.prototype.toString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/toString)替代。
109
110获取区域对象的字符串。
111
112**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
113
114**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
115
116**系统能力**:SystemCapability.Global.I18n
117
118**返回值:**
119
120| 类型     | 说明          |
121| ------ | ----------- |
122| string | 区域对象的字符串。 |
123
124**示例:**
125  ```ts
126  // 创建en-GB区域对象
127  let locale = new intl.Locale("en-GB");
128  let localeID = locale.toString(); // localeID = "en-GB"
129  ```
130
131### maximize<sup>(deprecated)</sup>
132
133maximize(): Locale
134
135> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.Locale.prototype.maximize()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/maximize)替代。
136
137最大化区域信息,补齐区域对象中缺少的脚本、国家地区信息。
138
139**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
140
141**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
142
143**系统能力**:SystemCapability.Global.I18n
144
145**返回值:**
146
147| 类型                | 说明         |
148| ----------------- | ---------- |
149| [Locale](#localedeprecated) | 补齐完脚本、国家地区信息后的区域对象。 |
150
151**示例:**
152  ```ts
153  // 创建zh区域对象
154  let locale = new intl.Locale("zh");
155  // 补齐区域对象的脚本和地区
156  let maximizedLocale = locale.maximize();
157  let localeID = maximizedLocale.toString(); // localeID = "zh-Hans-CN"
158
159  // 创建en-US区域对象
160  locale = new intl.Locale("en-US");
161  // 补齐区域对象的脚本
162  maximizedLocale = locale.maximize();
163  localeID = maximizedLocale.toString(); // localeID = "en-Latn-US"
164  ```
165
166
167### minimize<sup>(deprecated)</sup>
168
169minimize(): Locale
170
171> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.Locale.prototype.minimize()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/minimize)替代。
172
173最小化区域信息,移除区域对象中的脚本、国家地区信息。
174
175**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
176
177**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
178
179**系统能力**:SystemCapability.Global.I18n
180
181**返回值:**
182
183| 类型                | 说明         |
184| ----------------- | ---------- |
185| [Locale](#localedeprecated) | 移除完脚本、国家地区信息后的区域对象。 |
186
187**示例:**
188  ```ts
189  // 创建zh-Hans-CN区域对象
190  let locale = new intl.Locale("zh-Hans-CN");
191  // 移除区域对象的脚本和地区
192  let minimizedLocale = locale.minimize();
193  let localeID = minimizedLocale.toString(); // localeID = "zh"
194
195  // 创建en-US区域对象
196  locale = new intl.Locale("en-US");
197  // 移除区域对象的地区
198  minimizedLocale = locale.minimize();
199  localeID = minimizedLocale.toString(); // localeID = "en"
200  ```
201
202## LocaleOptions<sup>(deprecated)</sup>
203
204> 从API version 8开始支持,从API version 20开始废弃,以calendar为例,建议使用[Intl.Locale.prototype.calendar()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/calendar)替代。
205
206区域初始化选项。从API version 9开始,LocaleOptions属性由必填改为可选。
207
208**卡片能力**:从API version 11开始,该类型支持在ArkTS卡片中使用。
209
210**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
211
212**系统能力**:SystemCapability.Global.I18n
213
214| 名称              | 类型      | 只读   | 可选   |  说明                                       |
215| --------------- | ------- | ---- | ---- |---------------------------------------- |
216| calendar        | string  | 否   | 是   |历法参数,取值包括:<br>"buddhist", "chinese", "coptic", "dangi", "ethioaa", "ethiopic", "gregory", "hebrew", "indian", "islamic", "islamic-umalqura", "islamic-tbla", "islamic-civil", "islamic-rgsa", "iso8601", "japanese", "persian", "roc", "islamicc"。 |
217| collation       | string  | 否   | 是     |区域的排序规则,取值包括:<br>"big5han":拉丁字母使用的拼音排序。<br>"compat":兼容性排序,仅用于阿拉伯语。<br>"dict":词典风格排序,仅用于僧伽罗语。<br>"direct":二进制码点排序。<br>"ducet":按Unicode排序元素表排序。<br>"eor":按欧洲排序规则排序。<br>"gb2312":拼音排序,仅用于中文排序。<br>"phonebk":电话本风格排序。<br>"phonetic":发音排序。<br>"pinyin":拼音排序。<br>"reformed":瑞典语排序。<br>"searchjl":韩语初始辅音搜索的特殊排序。<br>"stroke":汉语的笔画排序。<br>"trad":传统风格排序,如西班牙语。<br>"unihan":统一汉字排序,用于日语、韩语、中文等汉字排序。<br>"zhuyin":注音排序,仅用于中文排序。 |
218| hourCycle       | string  | 否   | 是     |时制格式,取值包括:<br>"h11",&nbsp;"h12",&nbsp;"h23",&nbsp;"h24"。 |
219| numberingSystem | string  | 否   | 是     |数字系统,取值包括:<br>"adlm",&nbsp;"ahom",&nbsp;"arab",&nbsp;"arabext",&nbsp;"bali",&nbsp;"beng",&nbsp;"bhks",&nbsp;"brah",&nbsp;"cakm",&nbsp;"cham",&nbsp;"deva",&nbsp;"diak",&nbsp;"fullwide",&nbsp;"gong",&nbsp;"gonm",&nbsp;"gujr",&nbsp;"guru",&nbsp;"hanidec",&nbsp;"hmng",&nbsp;"hmnp",&nbsp;"java",&nbsp;"kali",&nbsp;"khmr",&nbsp;"knda",&nbsp;"lana",&nbsp;"lanatham",&nbsp;"laoo",&nbsp;"latn",&nbsp;"lepc",&nbsp;"limb",&nbsp;"mathbold",&nbsp;"mathdbl",&nbsp;"mathmono",&nbsp;"mathsanb",&nbsp;"mathsans",&nbsp;"mlym",&nbsp;"modi",&nbsp;"mong",&nbsp;"mroo",&nbsp;"mtei",&nbsp;"mymr",&nbsp;"mymrshan",&nbsp;"mymrtlng",&nbsp;"newa",&nbsp;"nkoo",&nbsp;"olck",&nbsp;"orya",&nbsp;"osma",&nbsp;"rohg",&nbsp;"saur",&nbsp;"segment",&nbsp;"shrd",&nbsp;"sind",&nbsp;"sinh",&nbsp;"sora",&nbsp;"sund",&nbsp;"takr",&nbsp;"talu",&nbsp;"tamldec",&nbsp;"telu",&nbsp;"thai",&nbsp;"tibt",&nbsp;"tirh",&nbsp;"vaii",&nbsp;"wara",&nbsp;"wcho"。 |
220| numeric         | boolean | 否   | 是     | true表示将数字字符视为数字进行排序处理,false表示将数字字符视为普通字符进行排序处理。例如设置为true时,字符串“21”和字符串“123”比较,相当于数字21和123比较。默认值:false。                               |
221| caseFirst       | string  | 否   | 是     | 区域的排序规则是否考虑大小写,取值包括:<br>"upper":大写排前面。<br>"lower":小写排前面。<br>"false":使用区域默认的大小写排序规则。 |
222
223>  **说明:**
224>
225>  - calendar:不同取值的含义请参考[设置日历和历法表1](../../internationalization/i18n-calendar.md)。
226
227## DateTimeFormat<sup>(deprecated)</sup>
228
229### constructor<sup>(deprecated)</sup>
230
231constructor()
232
233> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.DateTimeFormat() constructor](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat)替代。
234
235创建时间、日期格式化对象。
236
237**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
238
239**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
240
241**系统能力**:SystemCapability.Global.I18n
242
243**示例:**
244```ts
245// 使用系统当前区域ID创建DateTimeFormat对象
246let formatter: intl.DateTimeFormat = new intl.DateTimeFormat();
247```
248
249### constructor<sup>(deprecated)</sup>
250
251constructor(locale: string | Array&lt;string&gt;, options?: DateTimeOptions)
252
253> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.DateTimeFormat() constructor](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat)替代。
254
255创建时间、日期格式化对象。
256
257**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
258
259**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
260
261**系统能力**:SystemCapability.Global.I18n
262
263**参数:**
264
265| 参数名                  | 类型                                   | 必填   | 说明                           |
266| -------------------- | ------------------------------------ | ---- | ---------------------------- |
267| locale               | string \| Array&lt;string&gt;        | 是    | 区域ID或区域ID数组。输入是区域ID数组时,使用第一个有效的区域ID。 |
268| options              | [DateTimeOptions](#datetimeoptionsdeprecated) | 否    | 创建时间、日期格式化对象时可设置的配置项。<br>若所有选项均未设置时,year、month、day三个属性的默认值为numeric。 |
269
270**示例:**
271```ts
272// 使用zh-CN区域ID创建DateTimeFormat对象,日期风格为full,时间风格为medium
273let formatter: intl.DateTimeFormat = new intl.DateTimeFormat('zh-CN', { dateStyle: 'full', timeStyle: 'medium' });
274
275// 使用区域ID列表创建DateTimeFormat对象,因为ban为非法区域ID,因此使用zh区域ID创建DateTimeFormat对象
276formatter = new intl.DateTimeFormat(['ban', 'zh'], { dateStyle: 'full', timeStyle: 'medium' });
277```
278
279### format<sup>(deprecated)</sup>
280
281format(date: Date): string
282
283> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.DateTimeFormat.prototype.format()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/format)替代。
284
285对时间、日期进行格式化。
286
287**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
288
289**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
290
291**系统能力**:SystemCapability.Global.I18n
292
293**参数:**
294
295| 参数名  | 类型   | 必填   | 说明      |
296| ---- | ---- | ---- | ------- |
297| date | Date | 是    | 时间、日期。说明:月份从0开始计数,例如0表示一月。 |
298
299**返回值:**
300
301| 类型     | 说明           |
302| ------ | ------------ |
303| string | 格式化后的时间、日期字符串。 |
304
305**示例:**
306```ts
307let date: Date = new Date(2021, 11, 17, 3, 24, 0); // 时间日期为2021.12.17 03:24:00
308// 使用en-GB区域ID创建DateTimeFormat对象
309let formatter: intl.DateTimeFormat = new intl.DateTimeFormat('en-GB');
310let formattedDate: string = formatter.format(date); // formattedDate "17/12/2021"
311
312// 使用en-GB区域ID创建DateTimeFormat对象,dateStyle设置为full,timeStyle设置为medium
313formatter = new intl.DateTimeFormat('en-GB', { dateStyle: 'full', timeStyle: 'medium' });
314formattedDate = formatter.format(date); // formattedDate "Friday, 17 December 2021, 03:24:00"
315```
316
317### formatRange<sup>(deprecated)</sup>
318
319formatRange(startDate: Date, endDate: Date): string
320
321> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.DateTimeFormat.prototype.formatRange()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/formatRange)替代。
322
323对时间段、日期段进行格式化。
324
325**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
326
327**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
328
329**系统能力**:SystemCapability.Global.I18n
330
331**参数:**
332
333| 参数名       | 类型   | 必填   | 说明       |
334| --------- | ---- | ---- | -------- |
335| startDate | Date | 是    | 时间、日期的开始。说明:月份从0开始计数,例如0表示一月。|
336| endDate   | Date | 是    | 时间、日期的结束。说明:月份从0开始计数,例如0表示一月。|
337
338**返回值:**
339
340| 类型     | 说明             |
341| ------ | -------------- |
342| string | 格式化后的时间段、日期段字符串。 |
343
344**示例:**
345```ts
346let startDate: Date = new Date(2021, 11, 17, 3, 24, 0); // 时间日期为2021.12.17 03:24:00
347let endDate: Date = new Date(2021, 11, 18, 3, 24, 0);
348// 使用en-GB区域ID创建DateTimeFormat对象
349let formatter: intl.DateTimeFormat = new intl.DateTimeFormat('en-GB');
350let formattedDateRange: string = formatter.formatRange(startDate, endDate); // formattedDateRange = "17/12/2021 - 18/12/2021"
351```
352
353### resolvedOptions<sup>(deprecated)</sup>
354
355resolvedOptions(): DateTimeOptions
356
357> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.DateTimeFormat.prototype.resolvedOptions()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/resolvedOptions)替代。
358
359获取创建时间、日期格式化对象时设置的配置项。
360
361**卡片能力**:从API version 11开始,该接口支持在ArkTS卡片中使用。
362
363**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
364
365**系统能力**:SystemCapability.Global.I18n
366
367**返回值:**
368
369| 类型                                   | 说明                            |
370| ------------------------------------ | ----------------------------- |
371| [DateTimeOptions](#datetimeoptionsdeprecated) | 时间、日期格式化对象设置的配置项。 |
372
373**示例:**
374```ts
375let formatter: intl.DateTimeFormat = new intl.DateTimeFormat("en-GB", { dateStyle: 'full', timeStyle: 'medium' });
376// 返回DateTimeFormat对象的配置项
377let options: intl.DateTimeOptions = formatter.resolvedOptions();
378let dateStyle: string | undefined = options.dateStyle; // dateStyle = 'full'
379let timeStyle: string | undefined = options.timeStyle; // timeStyle = 'medium'
380```
381
382
383## DateTimeOptions<sup>(deprecated)</sup>
384
385> 从API version 8开始支持,从API version 20开始废弃,建议使用Intl.DateTimeFormatOptionsIntl.ResolvedDateTimeFormatOptions替代。用法参考[Intl.DateTimeFormat() constructor](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat)和[Intl.DateTimeFormat.prototype.resolvedOptions()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/resolvedOptions)386
387时间、日期格式化时可设置的配置项。从API version 9开始,DateTimeOptions的属性由必填改为可选。
388
389**卡片能力**:从API version 11开始,该类型支持在ArkTS卡片中使用。
390
391**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
392
393**系统能力**:SystemCapability.Global.I18n
394
395| 名称              | 类型      | 只读   | 可选   | 说明                                       |
396| --------------- | ------- | ---- | ---- |  ---------------------------------------- |
397| locale          | string  | 否    | 是    |合法的区域ID,如:zh-Hans-CN。<br>默认值:系统当前区域ID。           |
398| dateStyle       | string  | 否    | 是     |日期显示格式,取值包括:<br>"long",&nbsp;"short",&nbsp;"medium",&nbsp;"full",&nbsp;"auto"。<br>不同取值的显示效果请参考[附录表1](#附录)。 |
399| timeStyle       | string  | 否    | 是     |时间显示格式,取值包括:<br>"long",&nbsp;"short",&nbsp;"medium",&nbsp;"full",&nbsp;"auto"。<br>不同取值的显示效果请参考[附录表2](#附录)。 |
400| hourCycle       | string  | 否    | 是     |时制格式,取值包括:<br>"h11",&nbsp;"h12",&nbsp;"h23",&nbsp;"h24"。<br>不设置dateStyle或timeStyle参数时的显示效果请参考[附录表5](#附录)。<br>设置dateStyle或timeStyle参数时的显示效果请参考[附录表6](#附录)。 |
401| timeZone        | string  | 否    | 是     |使用的时区,取值为合法的IANA时区ID。                      |
402| numberingSystem | string  | 否    | 是     |数字系统,取值包括:<br>"adlm",&nbsp;"ahom",&nbsp;"arab",&nbsp;"arabext",&nbsp;"bali",&nbsp;"beng",&nbsp;"bhks",&nbsp;"brah",&nbsp;"cakm",&nbsp;"cham",&nbsp;"deva",&nbsp;"diak",&nbsp;"fullwide",&nbsp;"gong",&nbsp;"gonm",&nbsp;"gujr",&nbsp;"guru",&nbsp;"hanidec",&nbsp;"hmng",&nbsp;"hmnp",&nbsp;"java",&nbsp;"kali",&nbsp;"khmr",&nbsp;"knda",&nbsp;"lana",&nbsp;"lanatham",&nbsp;"laoo",&nbsp;"latn",&nbsp;"lepc",&nbsp;"limb",&nbsp;"mathbold",&nbsp;"mathdbl",&nbsp;"mathmono",&nbsp;"mathsanb",&nbsp;"mathsans",&nbsp;"mlym",&nbsp;"modi",&nbsp;"mong",&nbsp;"mroo",&nbsp;"mtei",&nbsp;"mymr",&nbsp;"mymrshan",&nbsp;"mymrtlng",&nbsp;"newa",&nbsp;"nkoo",&nbsp;"olck",&nbsp;"orya",&nbsp;"osma",&nbsp;"rohg",&nbsp;"saur",&nbsp;"segment",&nbsp;"shrd",&nbsp;"sind",&nbsp;"sinh",&nbsp;"sora",&nbsp;"sund",&nbsp;"takr",&nbsp;"talu",&nbsp;"tamldec",&nbsp;"telu",&nbsp;"thai",&nbsp;"tibt",&nbsp;"tirh",&nbsp;"vaii",&nbsp;"wara",&nbsp;"wcho"。 |
403| hour12          | boolean | 否    | 是     | true表示使用12小时制,false表示使用24小时制。<br>同时设置hour12和hourCycle时,hourCycle不生效。<br>若hour12和hourCycle未设置且系统24小时开关打开时,hour12属性的默认值为false。|
404| weekday         | string  | 否    | 是     | 星期的显示格式,取值包括:<br>"long",&nbsp;"short",&nbsp;"narrow",&nbsp;"auto"。<br>不同取值的显示效果请参考[附录表4](#附录)。 |
405| era             | string  | 否    | 是     | 纪元的显示格式,取值包括:<br>"long",&nbsp;"short",&nbsp;"narrow",&nbsp;"auto"。<br>不同取值的显示效果请参考[附录表9](#附录)。 |
406| year            | string  | 否    | 是     | 年份的显示格式,取值包括:<br>"numeric",&nbsp;"2-digit"。<br>不同取值的显示效果请参考[附录表3](#附录)。  |
407| month           | string  | 否    | 是    | 月份的显示格式,取值包括:<br>"numeric",&nbsp;"2-digit",&nbsp;"long",&nbsp;"short",&nbsp;"narrow",&nbsp;"auto"。<br>不同取值的显示效果请参考[附录表7](#附录)。 |
408| day             | string  | 否    | 是     | 日期的显示格式,取值包括:<br>"numeric",&nbsp;"2-digit"。  |
409| hour            | string  | 否    | 是     | 小时的显示格式,取值包括:<br>"numeric",&nbsp;"2-digit"。  |
410| minute          | string  | 否    | 是     | 分钟的显示格式,取值包括:<br>"numeric",&nbsp;"2-digit"。  |
411| second          | string  | 否    | 是     | 秒钟的显示格式,取值包括:<br>"numeric",&nbsp;"2-digit"。  |
412| timeZoneName    | string  | 否    | 是     | 时区名称的本地化表示,取值包括:<br>"long",&nbsp;"short",&nbsp;"auto"。<br>不同取值的显示效果请参考[附录表8](#附录)。  |
413| dayPeriod       | string  | 否    | 是     | 时段的显示格式,取值包括:<br>"long",&nbsp;"short",&nbsp;"narrow",&nbsp;"auto"。<br>不同取值的显示效果请参考[附录表10](#附录)。 |
414| localeMatcher   | string  | 否    | 是     | 要使用的区域匹配算法,取值包括:<br>"lookup":精确匹配。<br>"best&nbsp;fit":最佳匹配。 |
415| formatMatcher   | string  | 否    | 是     | 要使用的格式匹配算法,取值包括:<br>"basic":精确匹配。<br>"best&nbsp;fit":最佳匹配。 |
416
417## NumberFormat
418
419提供数字格式化的能力。
420
421### constructor<sup>8+</sup>
422
423constructor()
424
425创建数字格式化对象。
426
427**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
428
429**系统能力**:SystemCapability.Global.I18n
430
431**示例:**
432```ts
433// 使用系统当前区域ID创建NumberFormat对象
434let formatter: intl.NumberFormat = new intl.NumberFormat();
435```
436
437
438### constructor
439
440constructor(locale: string | Array&lt;string&gt;, options?: NumberOptions)
441
442创建数字格式化对象。
443
444**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
445
446**系统能力**:SystemCapability.Global.I18n
447
448**参数:**
449
450| 参数名                  | 类型                               | 必填   | 说明                           |
451| -------------------- | -------------------------------- | ---- | ---------------------------- |
452| locale               | string \| Array&lt;string&gt;    | 是    | 区域ID或区域ID数组。输入是区域ID数组时,使用第一个有效的区域ID。 |
453| options              | [NumberOptions](#numberoptions) | 否    | 创建数字格式化对象时可设置的配置项。               |
454
455**示例:**
456```ts
457// 使用en-GB区域ID创建NumberFormat对象,style设置为decimal,notation设置为scientific
458let formatter: intl.NumberFormat = new intl.NumberFormat('en-GB', { style: 'decimal', notation: 'scientific' });
459```
460
461### format
462
463format(num: number): string
464
465对数字进行格式化。
466
467**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
468
469**系统能力**:SystemCapability.Global.I18n
470
471**参数:**
472
473| 参数名    | 类型     | 必填   | 说明   |
474| ------ | ------ | ---- | ---- |
475| num | number | 是    | 数字对象。 |
476
477**返回值:**
478
479| 类型     | 说明         |
480| ------ | ---------- |
481| string | 格式化后的数字字符串。 |
482
483
484**示例:**
485```ts
486// 使用区域ID列表创建NumberFormat对象,因为en-GB为合法的区域ID,因此使用en-GB创建NumberFormat对象
487let formatter: intl.NumberFormat = new intl.NumberFormat(['en-GB', 'zh'], { style: 'decimal', notation: 'scientific' });
488let formattedNumber: string = formatter.format(1223); // formattedNumber = 1.223E3
489let options : intl.NumberOptions = {
490  roundingPriority: "lessPrecision",
491  maximumFractionDigits: 3,
492  maximumSignificantDigits: 3
493}
494formatter = new intl.NumberFormat('en', options);
495let result: string = formatter.format(1.23456); // result = 1.23
496```
497
498### formatRange<sup>18+</sup>
499
500formatRange(startRange: number, endRange: number): string
501
502对数字范围进行格式化。
503
504**原子化服务API**:从API version 18开始,该接口支持在原子化服务中使用。
505
506**系统能力**:SystemCapability.Global.I18n
507
508**参数:**
509
510| 参数名    | 类型     | 必填   | 说明   |
511| ------ | ------ | ---- | ---- |
512| startRange | number | 是    | 开始数字。 |
513| endRange | number | 是    | 结束数字。 |
514
515**返回值:**
516
517| 类型     | 说明         |
518| ------ | ---------- |
519| string | 格式化后的数字范围字符串。 |
520
521
522**示例:**
523```ts
524let formatter: intl.NumberFormat = new intl.NumberFormat('en-US', { style: 'unit', unit: 'meter' });
525let formattedRange: string = formatter.formatRange(0, 3); // formattedRange: 0–3 m
526```
527
528
529### resolvedOptions
530
531resolvedOptions(): NumberOptions
532
533获取创建数字格式化对象时设置的配置项。
534
535**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
536
537**系统能力**:SystemCapability.Global.I18n
538
539**返回值:**
540
541| 类型                               | 说明                          |
542| -------------------------------- | --------------------------- |
543| [NumberOptions](#numberoptions) | 创建数字格式化对象时设置的配置项。 |
544
545
546**示例:**
547```ts
548let formatter: intl.NumberFormat = new intl.NumberFormat(['en-GB', 'zh'], { style: 'decimal', notation: 'scientific' });
549// 获取NumberFormat对象配置项
550let options: intl.NumberOptions = formatter.resolvedOptions();
551let style: string | undefined = options.style; // style = 'decimal'
552let notation: string | undefined = options.notation; // notation = 'scientific'
553```
554
555## NumberOptions
556
557创建数字格式化对象时可设置的配置项。从API version 9开始,NumberOptions的属性由必填改为可选。
558
559**系统能力**:SystemCapability.Global.I18n
560
561| 名称                       | 类型      | 只读   | 可选   |  说明                                       |
562| ------------------------ | ------- | ---- | ---- |  ---------------------------------------- |
563| locale                   | string  | 否    | 是    | 合法的区域ID,&nbsp;如:"zh-Hans-CN"。<br>默认值:系统当前区域ID。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。               |
564| currency                 | string  | 否    | 是    | 货币单位,&nbsp;取值符合[ISO-4217标准](https://www.iso.org/iso-4217-currency-codes.html),如:"EUR","CNY","USD"等。<br>从API version 12开始支持三位数字代码,如:"978","156","840"等。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。    |
565| currencySign             | string  | 否    | 是    | 货币单位的符号显示,取值包括:&nbsp;"standard","accounting"。<br>默认值:standard。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表19](#附录)。 |
566| currencyDisplay          | string  | 否    | 是    | 货币的显示方式,取值包括:"symbol",&nbsp;"narrowSymbol",&nbsp;"code",&nbsp;"name"。<br>默认值:symbol。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表20](#附录)。 |
567| unit                     | string  | 否    | 是    | 单位名称,如:"meter","inch",“hectare”等。<br>从API version 18开始新增支持的组合单位有: "beat-per-minute", "body-weight-per-second", "breath-per-minute", "foot-per-hour", "jump-rope-per-minute", "meter-per-hour", "milliliter-per-minute-per-kilogram", "rotation-per-minute", "step-per-minute", "stroke-per-minute"。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。       |
568| unitDisplay              | string  | 否    | 是    | 单位的显示格式,取值包括:"long",&nbsp;"short",&nbsp;"narrow"。<br>默认值:short。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表21](#附录)。 |
569| unitUsage<sup>8+</sup>   | string  | 否    | 是    | 单位的使用场景,取值包括:"default",&nbsp;"area-land-agricult",&nbsp;"area-land-commercl",&nbsp;"area-land-residntl",&nbsp;"length-person",&nbsp;"length-person-small",&nbsp;"length-rainfall",&nbsp;"length-road",&nbsp;"length-road-small",&nbsp;"length-snowfall",&nbsp;"length-vehicle",&nbsp;"length-visiblty",&nbsp;"length-visiblty-small",&nbsp;"length-person-informal",&nbsp;"length-person-small-informal",&nbsp;"length-road-informal",&nbsp;"speed-road-travel",&nbsp;"speed-wind",&nbsp;"temperature-person",&nbsp;"temperature-weather",&nbsp;"volume-vehicle-fuel",&nbsp;"elapsed-time-second",&nbsp;"size-file-byte",&nbsp;"size-shortfile-byte"。<br>默认值:default。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表22](#附录)。 |
570| signDisplay              | string  | 否    | 是    | 数字符号的显示格式,取值包括:<br>"auto":自动判断是否显示正负符号。<br>"never":不显示正负号。<br>"always":总是显示正负号。<br>"exceptZero":除了0都显示正负号。<br>默认值:"auto"。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 |
571| compactDisplay           | string  | 否    | 是    | 紧凑显示格式,取值包括:"long",&nbsp;"short"。<br>默认值:short。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表18](#附录)。      |
572| notation                 | string  | 否    | 是    | 数字的表示方法,取值包括:"standard",&nbsp;"scientific",&nbsp;"engineering",&nbsp;"compact"。<br>默认值:standard。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表17](#附录)。 |
573| localeMatcher            | string  | 否    | 是    | 要使用的区域匹配算法,取值包括:"lookup",&nbsp;"best&nbsp;fit"。<br>默认值:best fit。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 |
574| style                    | string  | 否    | 是    | 数字的显示格式,取值包括:"decimal",&nbsp;"currency",&nbsp;"percent",&nbsp;"unit"。<br>默认值:decimal。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 |
575| numberingSystem          | string  | 否    | 是    | 数字系统,取值包括:<br>"adlm",&nbsp;"ahom",&nbsp;"arab",&nbsp;"arabext",&nbsp;"bali",&nbsp;"beng",&nbsp;"bhks",&nbsp;"brah",&nbsp;"cakm",&nbsp;"cham",&nbsp;"deva",&nbsp;"diak",&nbsp;"fullwide",&nbsp;"gong",&nbsp;"gonm",&nbsp;"gujr",&nbsp;"guru",&nbsp;"hanidec",&nbsp;"hmng",&nbsp;"hmnp",&nbsp;"java",&nbsp;"kali",&nbsp;"khmr",&nbsp;"knda",&nbsp;"lana",&nbsp;"lanatham",&nbsp;"laoo",&nbsp;"latn",&nbsp;"lepc",&nbsp;"limb",&nbsp;"mathbold",&nbsp;"mathdbl",&nbsp;"mathmono",&nbsp;"mathsanb",&nbsp;"mathsans",&nbsp;"mlym",&nbsp;"modi",&nbsp;"mong",&nbsp;"mroo",&nbsp;"mtei",&nbsp;"mymr",&nbsp;"mymrshan",&nbsp;"mymrtlng",&nbsp;"newa",&nbsp;"nkoo",&nbsp;"olck",&nbsp;"orya",&nbsp;"osma",&nbsp;"rohg",&nbsp;"saur",&nbsp;"segment",&nbsp;"shrd",&nbsp;"sind",&nbsp;"sinh",&nbsp;"sora",&nbsp;"sund",&nbsp;"takr",&nbsp;"talu",&nbsp;"tamldec",&nbsp;"telu",&nbsp;"thai",&nbsp;"tibt",&nbsp;"tirh",&nbsp;"vaii",&nbsp;"wara",&nbsp;"wcho"。<br>默认值:区域的默认数字系统。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。 |
576| useGrouping              | boolean | 否    | 是    | true表示分组显示,false表示不分组显示。<br>默认值:true。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表16](#附录)。                                  |
577| minimumIntegerDigits     | number  | 否    | 是    | 表示要使用的最小整数位数,取值范围:1~21。<br>默认值:1。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表11](#附录)。                  |
578| minimumFractionDigits    | number  | 否    | 是    | 表示要使用的最小分数位数,取值范围:0~20。<br>默认值:0。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表12](#附录)。                  |
579| maximumFractionDigits    | number  | 否    | 是    | 表示要使用的最大分数位数,取值范围:1~21。<br>默认值:3。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表13](#附录)。                  |
580| minimumSignificantDigits | number  | 否    | 是    | 表示要使用的最小有效位数,取值范围:1~21。<br>默认值:1。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表14](#附录)。                 |
581| maximumSignificantDigits | number  | 否    | 是    | 表示要使用的最大有效位数,取值范围:1~21。<br>默认值:21。<br>**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。<br>不同取值的显示效果请参考[附录表15](#附录)。                  |
582| roundingPriority<sup>18+</sup>   | string  | 否    | 是    | 最大分数位数和最大有效位数同时设置时的舍入优先级,取值包括:"auto","morePrecision"&nbsp;取最大分数位数,"lessPrecision"&nbsp;取最大有效位数。<br>默认值:auto。<br>**原子化服务API**:从API version 18开始,该接口支持在原子化服务中使用。                  |
583| roundingIncrement<sup>18+</sup>  | number  | 否    | 是    | 表示舍入增量,取值范围:1,2,5,10,20,25,50,100,200,250,500,1000,2000,2500,5000。<br>默认值:1。<br>**原子化服务API**:从API version 18开始,该接口支持在原子化服务中使用。                  |
584| roundingMode<sup>18+</sup>       | string  | 否    | 是    | 表示舍入模式,取值包括:<br>"ceil":向上取整。<br>"floor":向下取整。<br>"expand":远离零取整。<br>"trunc":向零取整。<br>"halfCeil":半向上取整,大于等于增量的一半时向上取整,小于增量的一半时向下取整。<br>"halfFloor":半向下取整,大于增量的一半时向上取整,小于等于增量的一半时向下取整。<br>"halfExpand":半远离零取整,大于等于增量的一半时远离零取整,小于增量的一半时向零取整。<br>"halfTrunc":半向零取整,大于增量的一半时远离零取整,小于等于增量的一半时向零取整。<br>"halfEven":半向偶数取整,大于增量的一半时 远离零取整,小于增量的一半时向零取整,等于增量的一半时向最近的偶数位舍入。<br>默认值:halfExpand。<br>**原子化服务API**:从API version 18开始,该接口支持在原子化服务中使用。 |
585
586## Collator<sup>8+</sup>
587
588提供字符串排序的能力。
589
590### constructor<sup>8+</sup>
591
592constructor()
593
594创建排序对象。
595
596**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
597
598**系统能力**:SystemCapability.Global.I18n
599
600**示例:**
601  ```ts
602  // 使用系统区域创建Collator对象
603  let collator = new intl.Collator();
604  ```
605
606
607### constructor<sup>8+</sup>
608
609constructor(locale: string | Array&lt;string&gt;, options?: CollatorOptions)
610
611创建排序对象。
612
613**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
614
615**系统能力**:SystemCapability.Global.I18n
616
617**参数:**
618
619| 参数名                  | 类型                                   | 必填   | 说明                           |
620| -------------------- | ------------------------------------ | ---- | ---------------------------- |
621| locale               | string \| Array&lt;string&gt;        | 是    | 区域ID或区域ID数组。输入是区域ID数组时,使用第一个有效的区域ID。  |
622| options              | [CollatorOptions](#collatoroptions8) | 否    | 创建排序对象时可设置的配置项。       |
623
624**示例:**
625  ```ts
626  // 使用zh-CN区域ID创建Collator对象,localeMatcher设置为lookup,usage设置为sort
627  let collator = new intl.Collator("zh-CN", {localeMatcher: "lookup", usage: "sort"});
628  ```
629
630
631### compare<sup>8+</sup>
632
633compare(first: string, second: string): number
634
635根据配置项的排序规则,比较两个字符串。
636
637**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
638
639**系统能力**:SystemCapability.Global.I18n
640
641**参数:**
642
643| 参数名    | 类型     | 必填   | 说明           |
644| ------ | ------ | ---- | ------------ |
645| first  | string | 是    | 进行比较的第一个字符串。  |
646| second | string | 是    | 进行比较的第二个字符串。 |
647
648**返回值:**
649
650| 类型     | 说明                                       |
651| ------ | ---------------------------------------- |
652| number | 比较结果。<br>- number为负数时,表示first排序在second之前。<br>- number为0时,表示first与second排序相同。<br>- number为正数,表示first排序在second之后。 |
653
654**示例:**
655  ```ts
656  // 使用en-GB区域ID创建Collator对象
657  let collator = new intl.Collator("en-GB");
658  // 比较first和second的先后顺序
659  let compareResult = collator.compare("first", "second"); // compareResult = -1
660  ```
661
662
663### resolvedOptions<sup>8+</sup>
664
665resolvedOptions(): CollatorOptions
666
667获取创建排序对象时设置的配置项。
668
669**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
670
671**系统能力**:SystemCapability.Global.I18n
672
673**返回值:**
674
675| 类型                                   | 说明                |
676| ------------------------------------ | ----------------- |
677| [CollatorOptions](#collatoroptions8) | 返回排序对象的属性。 |
678
679**示例:**
680  ```ts
681  let collator = new intl.Collator("zh-Hans", { usage: 'sort', ignorePunctuation: true });
682  // 获取Collator对象的配置项
683  let options = collator.resolvedOptions();
684  let usage = options.usage; // usage = "sort"
685  let ignorePunctuation = options.ignorePunctuation; // ignorePunctuation = true
686  ```
687
688
689## CollatorOptions<sup>8+</sup>
690
691创建排序对象时可设置的配置项。
692
693从API version 9中,CollatorOptions中的属性改为可选。
694
695**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
696
697**系统能力**:SystemCapability.Global.I18n
698
699| 名称                | 类型      | 只读   | 可选   | 说明                                       |
700| ----------------- | ------- | ---- | ---- | ---------------------------------------- |
701| localeMatcher   | string  | 否    | 是    | 区域匹配算法,取值范围:<br>"lookup":模糊匹配。<br>"best fit":准确匹配。<br>默认值:"best fit"。 |
702| usage             | string  | 否    | 是    | 比较的用途,取值范围:<br>"sort":用作排序。<br>"search":用作查找匹配的字符串。<br>默认值:"sort"。        |
703| sensitivity       | string  | 否    | 是    | 表示字符串中的哪些差异会导致非零结果值,取值范围:<br>"base":不同的字母比较不相等,比如:'a' ≠ 'b', 'a' = 'á', 'a' = 'A'。<br>"accent":不同的字母或不同读音的相同字母比较不相等,比如'a' ≠ 'b', 'a' ≠ 'á', 'a' = 'A'。<br>"case":不同的字母或相同字母大小写比较不相等,比如:'a' ≠ 'b', 'a' = 'á', 'a' ≠ 'A'。<br>"variant":不同的字母或读音及其它有区别的标志或大小写都是不相等的,比如:'a' ≠ 'b', 'a' ≠ 'á', 'a' ≠ 'A'。<br>默认值:"variant"。        |
704| ignorePunctuation | boolean | 否    | 是    | true表示忽略标点符号,false表示考虑标点符号。<br>默认值:false。        |
705| collation         | string  | 否    | 是    | 区域的排序规则,取值包括:<br>"big5han":拉丁字母使用的拼音排序。<br>"compat":兼容性排序,仅用于阿拉伯语。<br>"dict":词典风格排序,仅用于僧伽罗语。<br>"direct":二进制码点排序。<br>"ducet":按Unicode排序元素表排序。<br>"eor":按欧洲排序规则排序。<br>"gb2312":拼音排序,仅用于中文排序。<br>"phonebk":电话本风格排序。<br>"phonetic":发音排序。<br>"pinyin":拼音排序。<br>"reformed":瑞典语排序。<br>"searchjl":韩语初始辅音搜索的特殊排序。<br>"stroke":汉语的笔画排序。<br>"trad":传统风格排序,如西班牙语。<br>"unihan":统一汉字排序,用于日语、韩语、中文等汉字排序。<br>"zhuyin":注音排序,仅用于中文排序。<br>默认值:"default"。 |
706| numeric           | boolean | 否    | 是    | 数字排序,取值包括:<br>true:使用数字排序,比如:'1' &lt; '2' &lt; '10' &lt; '11'。<br>false:不使用数字排序,比如:'1' &lt; '10' &lt; '11' &lt; '2'。<br>默认值:false。          |
707| caseFirst         | string  | 否    | 是    | 区域的排序规则是否考虑大小写,取值包括:<br>"upper":大写排前面。<br>"lower":小写排前面。<br>"false":使用区域默认的大小写排序规则。<br>默认值:"false"。 |
708
709
710## PluralRules<sup>(deprecated)</sup>
711
712### constructor<sup>(deprecated)</sup>
713
714constructor()
715
716> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules)替代。
717
718创建单复数对象来计算数字的单复数类别。
719
720**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
721
722**系统能力**:SystemCapability.Global.I18n
723
724**示例:**
725  ```ts
726  // 使用系统区域创建PluralRules对象
727  let pluralRules = new intl.PluralRules();
728  ```
729
730
731### constructor<sup>(deprecated)</sup>
732
733constructor(locale: string | Array&lt;string&gt;, options?: PluralRulesOptions)
734
735> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules)替代。
736
737创建单复数对象来计算数字的单复数类别。
738
739**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
740
741**系统能力**:SystemCapability.Global.I18n
742
743**参数:**
744
745| 参数名                  | 类型                                       | 必填   | 说明                           |
746| -------------------- | ---------------------------------------- | ---- | ---------------------------- |
747| locale               | string \| Array&lt;string&gt;            | 是    | 区域ID或区域ID数组。输入是区域ID数组时,使用第一个有效的区域ID。 |
748| options              | [PluralRulesOptions](#pluralrulesoptionsdeprecated) | 否    | 创建单复数对象时设置的配置项。       |
749
750**示例:**
751```ts
752// 使用zh-CN区域ID创建PluralRules对象,localeMatcher设置为lookup,type设置为cardinal
753let pluralRules: intl.PluralRules = new intl.PluralRules('zh-CN', { localeMatcher: 'lookup', type: 'cardinal' });
754```
755
756### select<sup>(deprecated)</sup>
757
758select(n: number): string
759
760> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/select)替代。
761
762获取数字的单复数类别。
763
764**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
765
766**系统能力**:SystemCapability.Global.I18n
767
768**参数:**
769
770| 参数名  | 类型     | 必填   | 说明           |
771| ---- | ------ | ---- | ------------ |
772| n    | number | 是    | 待获取单复数类别的数字。 |
773
774**返回值:**
775
776| 类型     | 说明                                       |
777| ------ | ---------------------------------------- |
778| string | 单复数类别,取值包括:"zero","one","two",&nbsp;"few",&nbsp;"many",&nbsp;"others"。 <br>不同取值的含义请参考[语言单复数规则](https://www.unicode.org/cldr/charts/45/supplemental/language_plural_rules.html)。|
779
780**示例:**
781  ```ts
782  // 使用zh-Hans区域ID创建PluralRules对象
783  let zhPluralRules = new intl.PluralRules("zh-Hans");
784  // 计算zh-Hans区域中数字1对应的单复数类别
785  let plural = zhPluralRules.select(1); // plural = other
786
787  // 使用en-US区域ID创建PluralRules对象
788  let enPluralRules = new intl.PluralRules("en-US");
789  // 计算en-US区域中数字1对应的单复数类别
790  plural = enPluralRules.select(1); // plural = one
791  ```
792
793
794## PluralRulesOptions<sup>(deprecated)</sup>
795
796创建单复数对象时可设置的配置项。从API version 9开始,PluralRulesOptions的属性由必填改为可选。
797
798**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
799
800**系统能力**:SystemCapability.Global.I18n
801
802| 名称                       | 类型     | 只读   | 可选   | 说明                                       |
803| ------------------------ | ------ | ---- | ---- | ---------------------------------------- |
804| localeMatcher<sup>(deprecated)</sup>            | string | 否    | 是    | 从API version 8开始支持,从API version 20开始废弃,建议使用Intl.PluralRulesOptions.localeMatcher替代,用法参考[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules#options)。<br>区域匹配算法,取值包括:"best&nbsp;fit",&nbsp;"lookup"。<br>默认值:best fit。 |
805| type<sup>(deprecated)</sup>                     | string | 否    | 是    | 从API version 8开始支持,从API version 20开始废弃,建议使用Intl.PluralRulesOptions.type替代,用法参考[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules#options)。<br>排序的类型,取值包括:"cardinal",&nbsp;"ordinal",<br>默认值:cardinal。<br>- cardinal:基数词,ordinal:序数词。  |
806| minimumIntegerDigits<sup>(deprecated)</sup>     | number | 否    | 是    | 从API version 8开始支持,从API version 20开始废弃,建议使用Intl.PluralRulesOptions.minimumIntegerDigits替代,用法参考[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules#options)。<br>表示要使用的最小整数位数,取值范围:1~21。<br>默认值:1。                  |
807| minimumFractionDigits<sup>(deprecated)</sup>    | number | 否    | 是    | 从API version 8开始支持,从API version 20开始废弃,建议使用Intl.PluralRulesOptions.minimumFractionDigits替代,用法参考[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules#options)。<br>表示要使用的最小分数位数,取值范围:0~20。<br>默认值:0。                  |
808| maximumFractionDigits<sup>(deprecated)</sup>    | number | 否    | 是    | 从API version 8开始支持,从API version 20开始废弃,建议使用Intl.PluralRulesOptions.maximumFractionDigits替代,用法参考[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules#options)。<br>表示要使用的最大分数位数,取值范围:1~21。<br>默认值:3。                  |
809| minimumSignificantDigits<sup>(deprecated)</sup> | number | 否    | 是    | 从API version 8开始支持,从API version 20开始废弃,建议使用Intl.PluralRulesOptions.minimumSignificantDigits替代,用法参考[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules#options)。<br>表示要使用的最小有效位数,取值范围:1~21。<br>默认值:1。                  |
810| maximumSignificantDigits<sup>(deprecated)</sup> | number | 否    | 是    | 从API version 8开始支持,从API version 20开始废弃,建议使用Intl.PluralRulesOptions.maximumSignificantDigits替代,用法参考[Intl.PluralRules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules/PluralRules#options)。<br>表示要使用的最大有效位数,取值范围:1~21。<br>默认值:21。                |
811
812
813## RelativeTimeFormat<sup>(deprecated)</sup>
814
815### constructor<sup>(deprecated)</sup>
816
817constructor()
818
819> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat)替代。
820
821创建相对时间格式化对象。
822
823**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
824
825**系统能力**:SystemCapability.Global.I18n
826
827**示例:**
828```ts
829// 使用系统区域创建RelativeTimeFormat对象
830let formatter: intl.RelativeTimeFormat = new intl.RelativeTimeFormat();
831```
832
833
834### constructor<sup>(deprecated)</sup>
835
836constructor(locale: string | Array&lt;string&gt;, options?: RelativeTimeFormatInputOptions)
837
838> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat)替代。
839
840创建相对时间格式化对象。
841
842**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
843
844**系统能力**:SystemCapability.Global.I18n
845
846**参数:**
847
848| 参数名                  | 类型                                       | 必填   | 说明                           |
849| -------------------- | ---------------------------------------- | ---- | ---------------------------- |
850| locale               | string \| Array&lt;string&gt;            | 是    | 区域ID或区域ID数组。输入是区域ID数组时,使用第一个有效的区域ID。 |
851| options              | [RelativeTimeFormatInputOptions](#relativetimeformatinputoptionsdeprecated) | 否    | 创建相对时间格式化对象时可配置的选项。     |
852
853**示例:**
854```ts
855// 使用zh-CN区域ID创建RelativeTimeFormat对象,localeMatcher设置为lookup,numeric设置为always,style设置为long
856let formatter: intl.RelativeTimeFormat = new intl.RelativeTimeFormat('zh-CN', {
857  localeMatcher: 'lookup',
858  numeric: 'always',
859  style: 'long'
860});
861```
862
863
864### format<sup>(deprecated)</sup>
865
866format(value: number, unit: string): string
867
868> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.RelativeTimeFormat.format()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/format)替代。
869
870对相对时间进行格式化。
871
872**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
873
874**系统能力**:SystemCapability.Global.I18n
875
876**参数:**
877
878| 参数名   | 类型     | 必填   | 说明                                       |
879| ----- | ------ | ---- | ---------------------------------------- |
880| value | number | 是    | 相对时间格式化的数值。                              |
881| unit  | string | 是    | 相对时间格式化的单位,<br>取值包括:"year",&nbsp;"quarter",&nbsp;"month",&nbsp;"week",&nbsp;"day",&nbsp;"hour",&nbsp;"minute",&nbsp;"second"。 |
882
883**返回值:**
884
885| 类型     | 说明         |
886| ------ | ---------- |
887| string | 格式化后的相对时间。 |
888
889**示例:**
890```ts
891// 使用zh-CN区域ID创建RelativeTimeFormat对象
892let formatter: intl.RelativeTimeFormat = new intl.RelativeTimeFormat('zh-CN');
893// 计算zh-CN区域中数字3,单位quarter的本地化表示
894let formatResult: string = formatter.format(3, 'quarter'); // formatResult = '3个季度后'
895```
896
897
898### formatToParts<sup>(deprecated)</sup>
899
900formatToParts(value: number, unit: string): Array&lt;object&gt;
901
902> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.RelativeTimeFormat.formatToParts()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts)替代。
903
904对相对时间进行格式化,获取格式化结果中各个部分的对象数组。
905
906**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
907
908**系统能力**:SystemCapability.Global.I18n
909
910**参数:**
911
912| 参数名   | 类型     | 必填   | 说明                                       |
913| ----- | ------ | ---- | ---------------------------------------- |
914| value | number | 是    | 相对时间格式化的数值。                              |
915| unit  | string | 是    | 相对时间格式化的单位,<br>取值包括:"year",&nbsp;"quarter",&nbsp;"month",&nbsp;"week",&nbsp;"day",&nbsp;"hour",&nbsp;"minute",&nbsp;"second"。 |
916
917**返回值:**
918
919| 类型                  | 说明                          |
920| ------------------- | --------------------------- |
921| Array&lt;object&gt; | 格式化结果中各个部分的对象数组。 |
922
923**示例:**
924```ts
925// 使用en区域ID创建RelativeTimeFormat对象,numeric设置为auto
926let formatter: intl.RelativeTimeFormat = new intl.RelativeTimeFormat('en', { numeric: 'auto' });
927let parts: Array<object> = formatter.formatToParts(10, 'seconds'); // parts = [ {type: 'literal', value: 'in'}, {type: 'integer', value: 10, unit: 'second'}, {type: 'literal', value: 'seconds'} ]
928```
929
930
931### resolvedOptions<sup>(deprecated)</sup>
932
933resolvedOptions(): RelativeTimeFormatResolvedOptions
934
935> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.RelativeTimeFormat.resolvedOptions()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions)替代。
936
937获取相对时间格式化对象的格式化配置项。
938
939**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
940
941**系统能力**:SystemCapability.Global.I18n
942
943**返回值:**
944
945| 类型                                       | 说明                                |
946| ---------------------------------------- | --------------------------------- |
947| [RelativeTimeFormatResolvedOptions](#relativetimeformatresolvedoptionsdeprecated) | 相对时间格式化对象的格式化配置项。 |
948
949**示例:**
950```ts
951// 使用en-GB区域ID创建RelativeTimeFormat对象
952let formatter: intl.RelativeTimeFormat = new intl.RelativeTimeFormat('en-GB', { style: 'short' });
953// 获取RelativeTimeFormat对象配置项
954let options: intl.RelativeTimeFormatResolvedOptions = formatter.resolvedOptions();
955let style: string = options.style; // style = 'short'
956```
957
958
959## RelativeTimeFormatInputOptions<sup>(deprecated)</sup>
960
961> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.RelativeTimeFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#options)替代。
962
963创建相对时间格式化对象时可设置的配置项。
964
965从API version 9开始,RelativeTimeFormatInputOptions中的属性改为可选。
966
967**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
968
969**系统能力**:SystemCapability.Global.I18n
970
971| 名称            | 类型     | 只读   | 可选   |说明                                       |
972| ------------- | ------ | ---- | ---- | ---------------------------------------- |
973| localeMatcher | string | 否    | 是    | 区域匹配算法,取值包括:"best&nbsp;fit",&nbsp;"lookup"。<br>默认值:best fit。 |
974| numeric       | string | 否    | 是    | 输出消息的格式,表示格式化结果中是否使用数字表示相对日期或时间。取值包括:"always",&nbsp;"auto"。<br>默认值:always。<br>不同取值的显示效果请参考[附录表23](#附录)。      |
975| style         | string | 否    | 是    | 国际化消息的长度,取值包括:"long",&nbsp;"short",&nbsp;"narrow"。<br>默认值:long。<br>不同取值的显示效果请参考[附录表24](#附录)。 |
976
977## RelativeTimeFormatResolvedOptions<sup>(deprecated)</sup>
978
979> 从API version 8开始支持,从API version 20开始废弃,建议使用[Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions#return_value)替代。
980
981相对时间格式化对象的格式化配置项。
982
983**原子化服务API**:从API version 12开始,该接口支持在原子化服务中使用。
984
985**系统能力**:SystemCapability.Global.I18n
986
987| 名称              | 类型     | 只读  | 可选   |说明                                       |
988| --------------- | ------ | ---- | ---- | ---------------------------------------- |
989| locale          | string | 否    | 否    | 表示区域ID的字符串,包括语言以及可选的脚本和区域。             |
990| numeric         | string | 否    | 否    | 输出消息的格式,表示格式化结果中是否使用数字表示相对日期或时间。取值包括:"always",&nbsp;"auto"。<br>不同取值的显示效果请参考[附录表23](#附录)。      |
991| style           | string | 否    | 否    | 国际化消息的长度,取值包括:"long",&nbsp;"short",&nbsp;"narrow"。<br>不同取值的显示效果请参考[附录表24](#附录)。 |
992| numberingSystem | string | 否    | 否    | 使用的数字系统,取值包括:<br>"adlm",&nbsp;"ahom",&nbsp;"arab",&nbsp;"arabext",&nbsp;"bali",&nbsp;"beng",&nbsp;"bhks",&nbsp;"brah",&nbsp;"cakm",&nbsp;"cham",&nbsp;"deva",&nbsp;"diak",&nbsp;"fullwide",&nbsp;"gong",&nbsp;"gonm",&nbsp;"gujr",&nbsp;"guru",&nbsp;"hanidec",&nbsp;"hmng",&nbsp;"hmnp",&nbsp;"java",&nbsp;"kali",&nbsp;"khmr",&nbsp;"knda",&nbsp;"lana",&nbsp;"lanatham",&nbsp;"laoo",&nbsp;"latn",&nbsp;"lepc",&nbsp;"limb",&nbsp;"mathbold",&nbsp;"mathdbl",&nbsp;"mathmono",&nbsp;"mathsanb",&nbsp;"mathsans",&nbsp;"mlym",&nbsp;"modi",&nbsp;"mong",&nbsp;"mroo",&nbsp;"mtei",&nbsp;"mymr",&nbsp;"mymrshan",&nbsp;"mymrtlng",&nbsp;"newa",&nbsp;"nkoo",&nbsp;"olck",&nbsp;"orya",&nbsp;"osma",&nbsp;"rohg",&nbsp;"saur",&nbsp;"segment",&nbsp;"shrd",&nbsp;"sind",&nbsp;"sinh",&nbsp;"sora",&nbsp;"sund",&nbsp;"takr",&nbsp;"talu",&nbsp;"tamldec",&nbsp;"telu",&nbsp;"thai",&nbsp;"tibt",&nbsp;"tirh",&nbsp;"vaii",&nbsp;"wara",&nbsp;"wcho"。 |
993
994## 附录
995
996**时间日期格式化选项**
997
998下方表格以时间:2021年9月17日 13:04:00、2021年9月17日 00:25:00和区域ID: zh-CN、en为例,说明[DateTimeOptions](#datetimeoptionsdeprecated)的取值和显示结果。
999
1000**表1** 日期显示格式(dateStyle)
1001
1002| 取值   | 描述                                    | 2021年9月17日 13:04:00,区域ID为zh-CN显示结果 | 2021年9月17日 13:04:00,区域ID为en显示结果 |
1003| ------ | --------------------------------------- | ------------------------------------------  | ---------------------------------------- |
1004| full   | 完整的日期显示,包含年份、月份、天数和星期。| 2021年9月17日星期五                          | Friday, September 17, 2021               |
1005| long   | 详细的日期显示,包含年份、月份和天数。     | 2021年9月17日                                | September 17, 2021                       |
1006| short  | 简短的日期显示,包含年份、月份和天数。     | 2021/9/17                                   | 9/17/21                                  |
1007| medium | 中等长度日期显示,包含年份、月份和天数。   | 2021年9月17日                                | Sep 17, 2021                             |
1008
1009**表2** 时间显示格式(timeStyle)
1010
1011| 取值   | 描述 | 2021年9月17日 13:04:00,区域ID为zh-CN显示结果 | 2021年9月17日 13:04:00,区域ID为en显示结果 |
1012| ------ | ------------- | -------- | -------- |
1013| full   | 完整的时间显示,包含时区和时间,时间精确到秒。 | 中国标准时间 13:04:00 | 13:04:00 China Standard Time |
1014| long   | 详细的时间显示,包含时区和时间,时区以GMT+时区偏移表示,时间精确到秒。 | GMT+8 13:04:00 | 13:04:00 GMT+8 |
1015| short  | 简短时间显示,包含小时和分钟。 | 13:04 | 13:04 |
1016| medium | 中等长度时间显示,包含小时、分钟和秒。 | 13:04:00 | 13:04:00 |
1017
1018**表3** 年份显示格式(year)
1019
1020| 取值 | 描述 | 2021年9月17日 13:04:00,区域ID为zh-CN显示结果 | 2021年9月17日 13:04:00,区域ID为en显示结果 |
1021| -------- | --------- | -------- | -------- |
1022| numeric | 完整的年份显示。 | 2021年 | 2021 |
1023| 2-digit | 用完整年份的后2位数字表示年份。 | 21年 | 21 |
1024
1025**表4** 星期显示格式(weekday)
1026
1027| 取值 | 描述 | 2021年9月17日 13:04:00,区域ID为zh-CN显示结果 | 2021年9月17日 13:04:00,区域ID为en显示结果 |
1028| -------- | ------- | -------- | -------- |
1029| long | 详细的星期显示。 | 星期五 | Friday |
1030| short | 简短的星期显示。 | 周五 | Fri |
1031| narrow | 最简短的星期显示。 | 五 | F |
1032
1033**表5** 时制格式(hourCycle)
1034
1035| 取值 | 描述            | 2021年9月17日 13:04:00,区域ID为zh-CN显示结果 | 2021年9月17日 00:25:00,区域ID为zh-CN显示结果 |
1036| --- | --------------- | -------------------------------------------- | ------------------------------------------- |
1037| h11 | 用0-11表示小时。 | 下午1:04                                     |  上午0:25                                    |
1038| h12 | 用1-12表示小时。 | 下午1:04                                     |  上午12:25                                   |
1039| h23 | 用0-23表示小时。 | 13:04                                        | 00:25                                       |
1040| h24 | 用1-24表示小时。 | 13:04                                        | 24:25                                       |
1041
1042> **说明**
1043>
1044> 不设置dateStyle或timeStyle参数时,hourCycle不同取值的显示效果如上表格。
1045
1046
1047**表6** 时制格式(hourCycle)
1048
1049| 取值 | 描述            | 2021年9月17日 13:04:00,区域ID为zh-CN显示结果 | 2021年9月17日 00:25:00,区域ID为zh-CN显示结果 |
1050| --- | --------------- | -------------------------------------------- | ------------------------------------------- |
1051| h11 | 用1-24表示小时。 | 下午13:04                                    |  上午24:25                                   |
1052| h12 | 用1-12表示小时。 | 下午1:04                                     |  上午12:25                                   |
1053| h23 | 用0-11表示小时。 | 1:04                                         |  0:25                                       |
1054| h24 | 用0-23表示小时。 | 13:04                                        |  0:25                                       |
1055
1056> **说明**
1057>
1058> 设置dateStyle或timeStyle参数时,hourCycle不同取值的显示效果如上表格。
1059
1060**表7** 月份格式(month)
1061
1062| 取值 | 描述 | 2021年9月17日 13:04:00,区域ID为zh-CN显示结果 | 2021年9月17日 13:04:00,区域ID为en显示结果 |
1063| -------- | --------- | -------- | -------- |
1064| numeric | 以数字形式显示月份。 | 9月 | 9 |
1065| 2-digit | 以两位数字形式显示月份。 | 09月 | 09 |
1066| long | 详细的月份显示。 | 九月 | September |
1067| short | 简短的月份显示。 | 9月 | Sep |
1068| narrow | 最简短的月份显示。 | 9 | S |
1069
1070**表8** 时区名称的本地化表示(timeZoneName)
1071
1072| 取值  | 描述                | 2021年9月17日 13:04:00,区域ID为zh-CN显示结果 | 2021年9月17日 13:04:00,区域ID为en显示结果 |
1073| ----- | ------------------ | -------------------------------------------- | ---------------------------------------- |
1074| long  | 详细的时区名称显示。 | 中国标准时间                                  | China Standard Time                      |
1075| short | 简短的时区名称显示。 | GMT+8                                        | GMT+8                                    |
1076
1077**表9** 纪元的显示格式(era)
1078
1079| 取值 | 描述 | 2021年9月17日 13:04:00,区域ID为zh-CN显示效果 | 2021年9月17日 13:04:00,区域ID为en显示效果 |
1080| -------- | ------ | -------- | -------- |
1081| long | 详细的纪元显示。 | 公元 | Anno Domini |
1082| short | 简短的纪元显示。 | 公元 | AD |
1083| narrow | 最简短的纪元显示。 | 公元 | A |
1084
1085**表10** 时段的显示格式(dayPeriod)
1086
1087| 取值 | 描述 | 2021年9月17日 13:04:00,区域ID为zh-CN显示效果 | 2021年9月17日 13:04:00,区域ID为en显示效果 |
1088| -------- | ------ | -------- | -------- |
1089| long | 详细的时段表述。 | 下午 | in the afternoon |
1090| short | 简短的时段表示。 | 下午 | in the afternoon |
1091| narrow | 最简短的时段表示。 | 下午 | in the afternoon |
1092
1093**数字格式化选项**
1094
1095通过数字格式化选项可以设置最小整数位数、最小小数位数、最大小数位数、最小有效位数、最大有效位数、是否分组显示、数字的表示方法、紧凑显示格式、舍入模式、舍入优先级、舍入增量以及数字的显示格式和数字系统。其中,数字的显示格式包括decimal(十进制)、percent(百分数)、currency(货币)和unit(单位)。
1096
1097以123000.123为例,各选项取值和显示效果如下表所示:
1098
1099**表11** 最小整数位数(minimumIntegerDigits)
1100
1101| 取值 | 显示效果 |
1102| -------- | -------- |
1103| 6 | 123,000.123 |
1104| 7 | 0,123,000.123 |
1105
1106**表12** 最小小数位数(minimumFractionDigits)
1107
1108| 取值 | 显示效果 |
1109| -------- | -------- |
1110| 3 | 123,000.123 |
1111| 4 | 123,000.1230 |
1112
1113**表13** 最大小数位数(maximumFractionDigits)
1114
1115| 取值 | 显示效果 |
1116| -------- | -------- |
1117| 3 | 123,000.123 |
1118| 2 | 123,000.12 |
1119
1120**表14** 最小有效位数(minimumSignificantDigits)
1121
1122| 取值 | 显示效果 |
1123| -------- | -------- |
1124| 9 | 123,000.123 |
1125| 10 | 123,000.1230 |
1126
1127**表15** 最大有效位数(maximumSignificantDigits)
1128
1129| 取值 | 显示效果 |
1130| -------- | -------- |
1131| 9 | 123,000.123 |
1132| 8 | 123,000.12 |
1133
1134**表16** 是否分组显示(useGrouping)
1135
1136| 取值 | 显示效果 |
1137| -------- | -------- |
1138| true | 123,000.123 |
1139| false | 123000.123 |
1140
1141**表17** 数字的表示方法(notation)
1142
1143| 取值 | 显示效果 |
1144| -------- | -------- |
1145| standard | 123,000.123 |
1146| scientific | 1.230001E5 |
1147| engineering | 123.000123E3 |
1148| compact | 123K |
1149
1150**表18** 紧凑显示格式(compactDisplay)
1151
1152| 取值 | 显示效果 |
1153| -------- | -------- |
1154| short | 123K |
1155| long | 123 thousand |
1156
1157**货币格式化选项**
1158
1159以货币单位USD,数字大小-12300为例。
1160
1161**表19** 货币单位的符号(currencySign)
1162
1163| 取值 | 显示效果 |
1164| -------- | -------- |
1165| standard | -US$12,300.00 |
1166| accounting | (US$12,300.00) |
1167
1168**表20** 货币的显示方式(currencyDisplay)
1169
1170| 取值 | 显示效果 |
1171| -------- | -------- |
1172| symbol | -US$12,300.00 |
1173| narrowSymbol | -$12,300.00 |
1174| code | -USD 12,300.00 |
1175| name | -12,300.00 US dollars |
1176
1177**单位格式化选项**
1178
1179以单位hectare,数字大小-12300为例。
1180
1181**表21** 单位的显示格式(unitDisplay)
1182
1183| 取值 | 显示效果 |
1184| -------- | -------- |
1185| long | -12,3000 hectares |
1186| short | -12,300 ha |
1187| narrow | -12,300ha |
1188
1189**表22** 单位的使用场景(unitUsage)
1190
1191| 取值 | 显示效果 |
1192| -------- | -------- |
1193| 未设置 | -12,300 ha |
1194| default | -47.491 sq mi |
1195| area-land-agricult | -30,393.962 ac |
1196
1197**相对时间格式化选项**
1198
1199以相对时间:一天前,区域ID: fr-FR和en-GB为例。
1200
1201**表23** 数值表示(numeric)
1202
1203| 取值   | 描述                                          | 显示效果(fr-FR) | 显示效果(en-GB) |
1204| ------ | -------------------------------------------- | -------------- | --------------- |
1205| always | 使用数值表示相对时间。                         | il y a 1 jour  | 1 day ago       |
1206| auto   | 根据区域ID自适应选择短语或数值表示相对时间。 | hier           | yesterday       |
1207
1208**表24** 相对时间样式(style)
1209
1210| 取值   | 描述                  | 显示效果(fr-FR) | 显示效果(en-GB) |
1211| ------ | -------------------- | -------------- | --------------  |
1212| long   | 详细的相对时间显示。   | il y a 1 jour  | 1 day ago       |
1213| short  | 简短的相对时间显示。   | il y a 1 j     | 1 day ago       |
1214| narrow | 最简短的相对时间显示。 | -1 j           | 1 day ago       |