codecamp

国际化-Intl

本模块提供基础的应用国际化能力,包括时间日期格式化、数字格式化、排序等,相关接口在ECMA 402标准中定义。

I18N模块提供其他非ECMA 402定义的国际化接口,与本模块共同使用可提供完整地国际化支持能力。

说明
  • 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

  • Intl模块包含国际化能力基础接口(在ECMA 402中定义),包括时间日期格式化、数字格式化、排序等,国际化增强能力请参考I18N模块

导入模块

  1. import Intl from '@ohos.intl';

未正确导入包可能产生不明确的接口行为。

Locale

属性

系统能力:SystemCapability.Global.I18n

名称

类型

可读

可写

说明

language

string

与区域设置关联的语, 如:zh。

script

string

语言的书写方式,如:Hans。

region

string

与区域设置相关的地区,如:CN。

baseName

string

Locale的基本核心信息(由语言脚本与地区组成),如:zh-Hans-CN。

caseFirst

string

区域的整理规则是否考虑大小写,取值包括:"upper", "lower", "false"。

calendar

string

区域的日历信息,取值包括:"buddhist", "chinese", "coptic","dangi", "ethioaa", "ethiopic", "gregory", "hebrew", "indian", "islamic", "islamic-umalqura", "islamic-tbla", "islamic-civil", "islamic-rgsa", "iso8601", "japanese", "persian", "roc", "islamicc"。

collation

string

区域的排序规则,取值包括:"big5han", "compat", "dict", "direct", "ducet", "eor", "gb2312", "phonebk", "phonetic", "pinyin", "reformed", "searchjl", "stroke", "trad", "unihan", "zhuyin"。

hourCycle

string

区域的时制信息,取值包括:"h12", "h23", "h11", "h24"。

numberingSystem

string

区域使用的数字系统,取值包括:"adlm", "ahom", "arab", "arabext", "bali", "beng", "bhks", "brah", "cakm", "cham", "deva", "diak", "fullwide", "gong", "gonm", "gujr", "guru", "hanidec", "hmng", "hmnp", "java", "kali", "khmr", "knda", "lana", "lanatham", "laoo", "latn", "lepc", "limb", "mathbold", "mathdbl", "mathmono", "mathsanb", "mathsans", "mlym", "modi", "mong", "mroo", "mtei", "mymr", "mymrshan", "mymrtlng", "newa", "nkoo", "olck", "orya", "osma", "rohg", "saur", "segment", "shrd", "sind", "sinh", "sora", "sund", "takr", "talu", "tamldec", "telu", "thai", "tibt", "tirh", "vaii", "wara", "wcho"。

numeric

boolean

是否对数字字符具有特殊的排序规则处理。

constructor8+

constructor()

创建区域对象

系统能力:SystemCapability.Global.I18n

示例:

  1. // 默认构造函数使用系统当前locale创建Locale对象
  2. let locale = new Intl.Locale();
  3. // 返回系统当前locale
  4. let localeID = locale.toString();

constructor

constructor(locale: string, options?: LocaleOptions)

创建区域对象

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

locale

string

包含区域信息的字符串,包括语言以、脚本、国家或地区。语言、脚本、国家或地区的国际标准及组合方式请见Intl开发指导

options9+

LocaleOptions

用于创建区域对象的选项。

示例:

  1. // 创建 "zh-CN" Locale对象
  2. let locale = new Intl.Locale("zh-CN");
  3. let localeID = locale.toString(); // localeID = "zh-CN"

toString

toString(): string

获取区域对象的字符串表示

系统能力:SystemCapability.Global.I18n

返回值:

类型

说明

string

区域对象的字符串表示。

示例:

  1. // 创建 "en-GB" Locale对象
  2. let locale = new Intl.Locale("en-GB");
  3. let localeID = locale.toString(); // localeID = "en-GB"

maximize

maximize(): Locale

最大化区域信息,若缺少脚本与地区信息,则补齐。

系统能力:SystemCapability.Global.I18n

返回值:

类型

说明

Locale

最大化后的区域对象。

示例:

  1. // 创建 "zh" Locale对象
  2. let locale = new Intl.Locale("zh");
  3. // 补齐Locale对象的脚本和地区
  4. let maximizedLocale = locale.maximize();
  5. let localeID = maximizedLocale.toString(); // localeID = "zh-Hans-CN"
  6. // 创建 "en-US" Locale对象
  7. locale = new Intl.Locale("en-US");
  8. // 补齐Locale对象的脚本
  9. maximizedLocale = locale.maximize();
  10. localeID = maximizedLocale.toString(); // localeID = "en-Latn-US"

minimize

minimize(): Locale

最小化区域信息,若包含脚本与地区信息,则去除。

系统能力:SystemCapability.Global.I18n

返回值:

类型

说明

Locale

最小化后的区域对象。

示例:

  1. // 创建 "zh-Hans-CN" Locale对象
  2. let locale = new Intl.Locale("zh-Hans-CN");
  3. // 去除Locale对象的脚本和地区
  4. let minimizedLocale = locale.minimize();
  5. let localeID = minimizedLocale.toString(); // localeID = "zh"
  6. // 创建 "en-US" Locale对象
  7. locale = new Intl.Locale("en-US");
  8. // 去除Locale对象的地区
  9. minimizedLocale = locale.minimize();
  10. localeID = minimizedLocale.toString(); // localeID = "en"

LocaleOptions9+

表示区域初始化选项。

系统能力:SystemCapability.Global.I18n

名称

类型

可读

可写

说明

calendar

string

日历参数,如:"buddhist", "chinese", "coptic", "dangi", "ethioaa", "ethiopic", "gregory", "hebrew", "indian", "islamic", "islamic-umalqura", "islamic-tbla", "islamic-civil", "islamic-rgsa", "iso8601", "japanese", "persian", "roc", "islamicc"。

collation

string

排序参数,取值包括:"big5han", "compat", "dict", "direct", "ducet", "emoji", "eor", "gb2312", "phonebk", "phonetic", "pinyin", "reformed ", "search", "searchjl", "standard", "stroke", "trad", "unihan", "zhuyin"。

hourCycle

string

时制格式,取值包括:"h11", "h12", "h23", "h24"。

numberingSystem

string

数字系统,取值包括:"adlm", "ahom", "arab", "arabext", "bali", "beng", "bhks", "brah", "cakm", "cham", "deva", "diak", "fullwide", "gong", "gonm", "gujr", "guru", "hanidec", "hmng", "hmnp", "java", "kali", "khmr", "knda", "lana", "lanatham", "laoo", "latn", "lepc", "limb", "mathbold", "mathdbl", "mathmono", "mathsanb", "mathsans", "mlym", "modi", "mong", "mroo", "mtei", "mymr", "mymrshan", "mymrtlng", "newa", "nkoo", "olck", "orya", "osma", "rohg", "saur", "segment", "shrd", "sind", "sinh", "sora", "sund", "takr", "talu", "tamldec", "telu", "thai", "tibt", "tirh", "vaii", "wara", "wcho"。

numeric

boolean

是否使用12小时制。

caseFirst

string

表示大写、小写的排序顺序,取值范围:"upper", "lower", "false"。

DateTimeFormat

constructor8+

constructor()

创建时间日期格式化对象。

系统能力:SystemCapability.Global.I18n

示例:

  1. // 使用系统当前locale创建DateTimeFormat对象
  2. let datefmt= new Intl.DateTimeFormat();

constructor

constructor(locale: string | Array<string>, options?: DateTimeOptions)

创建时间日期格式化对象。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

locale

string | Array<string>

包含区域设置信息的字符串,包括语言以及可选的脚本和区域。

options9+

DateTimeOptions

用于创建时间日期格式化的选项。

示例:

  1. // 使用 "zh-CN" locale创建DateTimeFormat对象,日期风格为full,时间风格为medium
  2. let datefmt= new Intl.DateTimeFormat("zh-CN", { dateStyle: 'full', timeStyle: 'medium' });

示例:

  1. // 使用 ["ban", "zh"] locale列表创建DateTimeFormat对象,因为ban为非法LocaleID,因此使用zh Locale创建DateTimeFormat对象
  2. let datefmt= new Intl.DateTimeFormat(["ban", "zh"], { dateStyle: 'full', timeStyle: 'medium' });

format

format(date: Date): string

格式化时间日期字符串。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

date

Date

时间日期对象。

返回值:

类型

说明

string

格式化后的时间日期字符串

示例:

  1. let date = new Date(2021, 11, 17, 3, 24, 0);
  2. // 使用 en-GB locale创建DateTimeFormat对象
  3. let datefmt = new Intl.DateTimeFormat("en-GB");
  4. let formattedDate = datefmt.format(date); // formattedDate "17/12/2021"
  5. // 使用 en-GB locale创建DateTimeFormat对象,dateStyle设置为full,timeStyle设置为medium
  6. datefmt = new Intl.DateTimeFormat("en-GB", { dateStyle: 'full', timeStyle: 'medium' });
  7. formattedDate = datefmt.format(date); // formattedDate "Friday, 17 December 2021 at 03:24:00"

formatRange

formatRange(startDate: Date, endDate: Date): string

格式化时间日期段字符串。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

startDate

Date

起始的时间日期。

endDate

Date

结束的时间日期。

返回值:

类型

说明

string

格式化后的时间日期段字符串。

示例:

  1. let startDate = new Date(2021, 11, 17, 3, 24, 0);
  2. let endDate = new Date(2021, 11, 18, 3, 24, 0);
  3. // 使用 en-GB locale创建DateTimeFormat对象
  4. let datefmt = new Intl.DateTimeFormat("en-GB");
  5. let formattedDateRange = datefmt.formatRange(startDate, endDate); // formattedDateRange = "17/12/2021-18/12/2021"

resolvedOptions

resolvedOptions(): DateTimeOptions

获取DateTimeFormat对象的格式化选项。

系统能力:SystemCapability.Global.I18n

返回值:

类型

说明

DateTimeOptions

DateTimeFormat 对象的格式化选项。

示例:

  1. let datefmt = new Intl.DateTimeFormat("en-GB", { dateStyle: 'full', timeStyle: 'medium' });
  2. // 返回DateTimeFormat对象的配置项
  3. let options = datefmt.resolvedOptions();
  4. let dateStyle = options.dateStyle; // dateStyle = "full"
  5. let timeStyle = options.timeStyle; // timeStyle = "medium"

DateTimeOptions9+

表示时间日期格式化选项。

系统能力:SystemCapability.Global.I18n

名称

类型

可读

可写

说明

locale

string

区域参数, 如:zh-Hans-CN。

dateStyle

string

日期显示格式,取值包括:"long", "short", "medium", "full"。

timeStyle

string

时间显示格式,取值包括:"long", "short", "medium", "full"。

hourCycle

string

时制格式,取值包括:"h11", "h12", "h23", "h24"。

timeZone

string

使用的时区(合法的IANA时区ID)。

numberingSystem

string

数字系统,取值包括:"adlm", "ahom", "arab", "arabext", "bali", "beng", "bhks", "brah", "cakm", "cham", "deva", "diak", "fullwide", "gong", "gonm", "gujr", "guru", "hanidec", "hmng", "hmnp", "java", "kali", "khmr", "knda", "lana", "lanatham", "laoo", "latn", "lepc", "limb", "mathbold", "mathdbl", "mathmono", "mathsanb", "mathsans", "mlym", "modi", "mong", "mroo", "mtei", "mymr", "mymrshan", "mymrtlng", "newa", "nkoo", "olck", "orya", "osma", "rohg", "saur", "segment", "shrd", "sind", "sinh", "sora", "sund", "takr", "talu", "tamldec", "telu", "thai", "tibt", "tirh", "vaii", "wara", "wcho"。

hour12

boolean

是否使用12小时制。

weekday

string

工作日的显示格式,取值包括:"long", "short", "narrow"。

era

string

时代的显示格式,取值包括:"long", "short", "narrow"。

year

string

年份的显示格式,取值包括:"numeric", "2-digit"。

month

string

月份的显示格式,取值包括:"numeric", "2-digit", "long", "short", "narrow"。

day

string

日期的显示格式,取值包括:"numeric", "2-digit"。

hour

string

小时的显示格式,取值包括:"numeric", "2-digit"。

minute

string

分钟的显示格式,取值包括:"numeric", "2-digit"。

second

string

秒钟的显示格式,取值包括:"numeric", "2-digit"。

timeZoneName

string

时区名称的本地化表示。

dayPeriod

string

时段的显示格式,取值包括:"long", "short", "narrow"。

localeMatcher

string

要使用的区域匹配算法,取值包括:"lookup", "best fit"。

formatMatcher

string

要使用的格式匹配算法,取值包括:"basic", "best fit"。

NumberFormat

constructor8+

constructor()

创建数字格式化对象。

系统能力:SystemCapability.Global.I18n

示例:

  1. // 使用系统当前locale创建NumberFormat对象
  2. let numfmt = new Intl.NumberFormat();

constructor

constructor(locale: string | Array<string>, options?: NumberOptions)

创建数字格式化对象。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

locale

string | Array<string>

包含区域设置信息的字符串,包括语言以及可选的脚本和区域。

options9+

NumberOptions

用于创建数字格式化的选项。

示例:

  1. // 使用 en-GB locale创建NumberFormat对象,style设置为decimal,notation设置为scientific
  2. let numfmt = new Intl.NumberFormat("en-GB", {style:'decimal', notation:"scientific"});

format

format(number: number): string;

格式化数字字符串。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

number

number

数字对象

返回值:

类型

说明

string

格式化后的数字字符串

示例:

  1. // 使用 ["en-GB", "zh"] locale列表创建NumberFormat对象,因为en-GB为合法LocaleID,因此使用en-GB创建NumberFormat对象
  2. let numfmt = new Intl.NumberFormat(["en-GB", "zh"], {style:'decimal', notation:"scientific"});
  3. let formattedNumber = numfmt.format(1223); // formattedNumber = 1.223E3

resolvedOptions

resolvedOptions(): NumberOptions

获取NumberFormat 对象的格式化选项。

系统能力:SystemCapability.Global.I18n

返回值:

类型

说明

NumberOptions

NumberFormat 对象的格式化选项。

示例:

  1. let numfmt = new Intl.NumberFormat(["en-GB", "zh"], {style:'decimal', notation:"scientific"});
  2. // 获取NumberFormat对象配置项
  3. let options = numfmt.resolvedOptions();
  4. let style = options.style; // style = decimal
  5. let notation = options.notation; // notation = scientific

NumberOptions9+

表示设备支持的能力。

系统能力:SystemCapability.Global.I18n

名称

类型

可读

可写

说明

locale

string

区域参数, 如:"zh-Hans-CN"。

currency

string

货币单位, 如:"EUR","CNY","USD"等。

currencySign

string

货币单位的符号显示,取值包括: "symbol","narrowSymbol","code","name" 。

currencyDisplay

string

货币的显示方式,取值包括:"symbol", "narrowSymbol", "code", "name"。

unit

string

单位名称,如:"meter","inch",“hectare”等。

unitDisplay

string

单位的显示格式,取值包括:"long", "short", "narrow"。

unitUsage

string

单位的使用场景,取值包括:"default", "area-land-agricult", "area-land-commercl", "area-land-residntl", "length-person", "length-person-small", "length-rainfall", "length-road", "length-road-small", "length-snowfall", "length-vehicle", "length-visiblty", "length-visiblty-small", "length-person-informal", "length-person-small-informal", "length-road-informal", "speed-road-travel", "speed-wind", "temperature-person", "temperature-weather", "volume-vehicle-fuel"。

signDisplay

string

数字符号的显示格式,取值包括:"auto", "never", "always", "expectZero"。

compactDisplay

string

紧凑型的显示格式,取值包括:"long", "short"。

notation

string

数字的格式化规格,取值包括:"standard", "scientific", "engineering", "compact"。

localeMatcher

string

要使用的区域匹配算法,取值包括:"lookup", "best fit"。

style

string

数字的显示格式,取值包括:"decimal", "currency", "percent", "unit"。

numberingSystem

string

数字系统,取值包括:"adlm", "ahom", "arab", "arabext", "bali", "beng", "bhks", "brah", "cakm", "cham", "deva", "diak", "fullwide", "gong", "gonm", "gujr", "guru", "hanidec", "hmng", "hmnp", "java", "kali", "khmr", "knda", "lana", "lanatham", "laoo", "latn", "lepc", "limb", "mathbold", "mathdbl", "mathmono", "mathsanb", "mathsans", "mlym", "modi", "mong", "mroo", "mtei", "mymr", "mymrshan", "mymrtlng", "newa", "nkoo", "olck", "orya", "osma", "rohg", "saur", "segment", "shrd", "sind", "sinh", "sora", "sund", "takr", "talu", "tamldec", "telu", "thai", "tibt", "tirh", "vaii", "wara", "wcho"。

useGrouping

boolean

是否分组显示。

minimumIntegerDigits

number

表示要使用的最小整数位数,取值范围:1~21。

minimumFractionDigits

number

表示要使用的最小分数位数,取值范围:0~20。

maximumFractionDigits

number

表示要使用的最大分数位数,取值范围:1~21。

minimumSignificantDigits

number

表示要使用的最低有效位数,取值范围:1~21。

maximumSignificantDigits

number

表示要使用的最大有效位数,取值范围:1~21。

Collator8+

constructor8+

constructor()

创建排序对象。

系统能力:SystemCapability.Global.I18n

示例:

  1. // 使用系统locale创建Collator对象
  2. let collator = new Intl.Collator();

constructor8+

constructor(locale: string | Array<string>, options?: CollatorOptions)

创建排序对象。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

locale

string | Array<string>

包含区域设置信息的字符串,包括语言以及可选的脚本和区域。

options9+

CollatorOptions

用于创建排序对象的选项。

示例:

  1. // 使用 zh-CN locale创建Collator对象,localeMatcher设置为lookup,usage设置为sort
  2. let collator = new Intl.Collator("zh-CN", {localeMatcher: "lookup", usage: "sort"});

compare8+

compare(first: string, second: string): number

依据Collator的排序策略对两个字符串进行比较。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

first

string

进行比较第一个字符串。

second

string

进行比较的第二个字符串。

返回值:

类型

说明

number

比较结果。当number为负数,表示first排序在second之前;当number为0,表示first与second排序相同;当number为正数,表示first排序在second之后。

示例:

  1. // 使用en-GB locale创建Collator对象
  2. let collator = new Intl.Collator("en-GB");
  3. // 比较 "first" 和 "second" 的先后顺序
  4. let compareResult = collator.compare("first", "second"); // compareResult = -1

resolvedOptions8+

resolvedOptions(): CollatorOptions

返回Collator对象的属性。

系统能力:SystemCapability.Global.I18n

返回值:

类型

说明

CollatorOptions

返回的Collator对象的属性。

示例:

  1. let collator = new Intl.Collator("zh-Hans", { usage: 'sort', ignorePunctuation: true });
  2. // 获取Collator对象的配置项
  3. let options = collator.resolvedOptions();
  4. let usage = options.usage; // usage = "sort"
  5. let ignorePunctuation = options.ignorePunctuation; // ignorePunctuation = true

CollatorOptions9+

表示Collator可设置的属性。

系统能力:SystemCapability.Global.I18n

名称

类型

可读

可写

说明

localeMatcher

string

locale匹配算法,取值范围:"best fit", "lookup"。

usage

string

比较的用途,取值范围:"sort", "search"。

sensitivity

string

表示字符串中的哪些差异会导致非零结果值,取值范围:"base", "accent", "case", "letiant"。

ignorePunctuation

boolean

表示是否忽略标点符号,取值范围:true, false。

collation

string

排序规则,取值范围:"big5han", "compat", "dict", "direct", "ducet", "eor", "gb2312", "phonebk", "phonetic", "pinyin", "reformed", "searchjl", "stroke", "trad", "unihan", "zhuyin"。

numeric

boolean

是否使用数字排序,取值范围:true, false。

caseFirst

string

表示大写、小写的排序顺序,取值范围:"upper", "lower", "false"。

PluralRules8+

constructor8+

constructor()

创建单复数对象来计算数字的单复数类别。

系统能力:SystemCapability.Global.I18n

示例:

  1. // 使用系统locale创建PluralRules对象
  2. let pluralRules = new Intl.PluralRules();

constructor8+

constructor(locale: string | Array<string>, options?: PluralRulesOptions)

创建单复数对象来计算数字的单复数类别。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

locale

string | Array<string>

包含区域设置信息的字符串,包括语言以及可选的脚本和区域。

options9+

PluralRulesOptions

用于创建单复数对象的选项。

示例:

  1. // 使用 zh-CN locale创建PluralRules对象,localeMatcher设置为lookup,type设置为cardinal
  2. let pluralRules= new Intl.PluralRules("zh-CN", {"localeMatcher": "lookup", "type": "cardinal"});

select8+

select(n: number): string

返回一个字符串表示该数字的单复数类别。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

n

number

待获取单复数类别的数字。

返回值:

类型

说明

string

单复数类别,取值包括:"zero","one","two", "few", "many", "others"。

示例:

  1. // 使用 zh-Hans locale创建PluralRules对象
  2. let zhPluralRules = new Intl.PluralRules("zh-Hans");
  3. // 计算 zh-Hans locale中数字1对应的单复数类别
  4. let plural = zhPluralRules.select(1); // plural = other
  5. // 使用 en-US locale创建PluralRules对象
  6. let enPluralRules = new Intl.PluralRules("en-US");
  7. // 计算 en-US locale中数字1对应的单复数类别
  8. plural = enPluralRules.select(1); // plural = one

PluralRulesOptions9+

表示PluralRules对象可设置的属性。

系统能力:SystemCapability.Global.I18n

名称

类型

可读

可写

说明

localeMatcher

string

locale匹配算法,取值包括:"best fit", "lookup"。

type

string

排序的类型,取值包括:"cardinal", "ordinal"。

minimumIntegerDigits

number

表示要使用的最小整数位数,取值范围:1~21。

minimumFractionDigits

number

表示要使用的最小分数位数,取值范围:0~20。

maximumFractionDigits

number

表示要使用的最大分数位数,取值范围:1~21。

minimumSignificantDigits

number

表示要使用的最低有效位数,取值范围:1~21。

maximumSignificantDigits

number

表示要使用的最大有效位数,取值范围:1~21。

RelativeTimeFormat8+

constructor8+

constructor()

创建相对时间格式化对象。

系统能力:SystemCapability.Global.I18n

示例:

  1. // 使用系统locale创建RelativeTimeFormat对象
  2. let relativetimefmt = new Intl.RelativeTimeFormat();

constructor8+

constructor(locale: string | Array<string>, options?: RelativeTimeFormatInputOptions)

创建相对时间格式化对象。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

locale

string | Array<string>

包含区域设置信息的字符串,包括语言以及可选的脚本和区域。

options9+

RelativeTimeFormatInputOptions

用于创建相对时间格式化对象的选项。

示例:

  1. // 使用 zh-CN locale创建RelativeTimeFormat对象,localeMatcher设置为lookup,numeric设置为always,style设置为long
  2. let relativeTimeFormat = new Intl.RelativeTimeFormat("zh-CN", {"localeMatcher": "lookup", "numeric": "always", "style": "long"});

format8+

format(value: number, unit: string): string

依据locale和格式化选项,对value和unit进行格式化。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

value

number

相对时间格式化的数值。

unit

string

相对时间格式化的单位,取值包括:"year", "quarter", "month", "week", "day", "hour", "minute", "second"。

返回值:

类型

说明

string

格式化后的相对时间。

示例:

  1. // 使用 zh-CN locale创建RelativeTimeFormat对象
  2. let relativetimefmt = new Intl.RelativeTimeFormat("zh-CN");
  3. // 计算 zh-CN locale中数字3,单位quarter的本地化表示
  4. let formatResult = relativetimefmt.format(3, "quarter"); // formatResult = "3个季度后"

formatToParts8+

formatToParts(value: number, unit: string): Array<object>

返回一个对象数组,表示可用于自定义区域设置格式的相对时间格式。

系统能力:SystemCapability.Global.I18n

参数:

参数名

类型

必填

说明

value

number

相对时间格式化的数值。

unit

string

相对时间格式化的单位,取值包括:"year", "quarter", "month", "week", "day", "hour", "minute", "second"。

返回值:

类型

说明

Array<object>

返回可用于自定义区域设置格式的相对时间格式的对象数组。

示例:

  1. // 使用 en locale创建RelativeTimeFormat对象,numeric设置为auto
  2. let relativetimefmt = new Intl.RelativeTimeFormat("en", {"numeric": "auto"});
  3. let parts = relativetimefmt.formatToParts(10, "seconds"); // parts = [ {type: "literal", value: "in"}, {type: "integer", value: 10, unit: "second"}, {type: "literal", value: "seconds"} ]

resolvedOptions8+

resolvedOptions(): RelativeTimeFormatResolvedOptions

获取RelativeTimeFormat对象的格式化选项。

系统能力:SystemCapability.Global.I18n

返回值:

类型

说明

RelativeTimeFormatResolvedOptions

RelativeTimeFormat 对象的格式化选项。

示例:

  1. // 使用 en-GB locale创建RelativeTimeFormat对象
  2. let relativetimefmt= new Intl.RelativeTimeFormat("en-GB", { style: "short" });
  3. // 获取RelativeTimeFormat对象配置项
  4. let options = relativetimefmt.resolvedOptions();
  5. let style = options.style; // style = "short"

RelativeTimeFormatInputOptions9+

表示RelativeTimeFormat对象可设置的属性。

系统能力:SystemCapability.Global.I18n

名称

类型

可读

可写

说明

localeMatcher

string

locale匹配算法,取值包括:"best fit", "lookup"。

numeric

string

输出消息的格式,取值包括:"always", "auto"。

style

string

国际化消息的长度,取值包括:"long", "short", "narrow"。

RelativeTimeFormatResolvedOptions8+

表示RelativeTimeFormat对象可设置的属性。

系统能力:SystemCapability.Global.I18n

名称

类型

可读

可写

说明

locale

string

包含区域设置信息的字符串,包括语言以及可选的脚本和区域。

numeric

string

输出消息的格式,取值包括:"always", "auto"。

style

string

国际化消息的长度,取值包括:"long", "short", "narrow"。

numberingSystem

string

国际化-I18n
资源管理
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

媒体组件

像素

枚举

类型

接口

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }