@formatjs/utils

中文文档
2.2.12发布于 2026/08/30MITTypeScriptES Module构建来源已验证近 30 天下载 1.8万

收集有用的公用设施

中文使用文档
文档目录8 节
  1. 安装
  2. 特征
  3. API 密码
  4. 国家代码
  5. 货币
  6. 语言
  7. 时区
  8. 许可证

@ formjs/ utils (中文(简体) )

收集与地方、国家、货币和时区合作的有用国际化公用设施.

安装

npm install @formatjs/utils

特征

  • 国家代码分类(ISO 3166)
  • 按国家分列的默认货币查询
  • 货币小单位和比额表计算(ISO 4217)
  • 默认区域检测
  • 默认时区检测

API 密码

国家代码

canonicalizeCountryCode(alpha3OrAlpha2?: string): string | undefined

将国家代码冠以ISO 3166 alpha-2国家代码(上).

import {canonicalizeCountryCode} from '@formatjs/utils'

canonicalizeCountryCode('usa') // 'US'
canonicalizeCountryCode('USA') // 'US'
canonicalizeCountryCode('us') // 'US'
canonicalizeCountryCode('US') // 'US'

货币

defaultCurrency(countryCode?: string): string

查找国家代码的默认货币 。 如果找不到,则返回美元.

import {defaultCurrency} from '@formatjs/utils'

defaultCurrency('US') // 'USD'
defaultCurrency('GB') // 'GBP'
defaultCurrency('JP') // 'JPY'

countriesUsingDefaultCurrency(currencyCode: string): string[]

寻找使用特定货币作为违约的国家.

import {countriesUsingDefaultCurrency} from '@formatjs/utils'

countriesUsingDefaultCurrency('EUR') // ['AT', 'BE', 'CY', 'DE', 'EE', ...]
countriesUsingDefaultCurrency('USD') // ['US', 'EC', 'SV', ...]

currencyMinorScale(currencyCode: string): number

返回给定的 ISO 4217 货币代码的次要单位表。 小单位秤是代表货币所使用小数位数的10的功率.

import {currencyMinorScale} from '@formatjs/utils'

currencyMinorScale('USD') // 100 (2 decimal places)
currencyMinorScale('JPY') // 1 (0 decimal places)
currencyMinorScale('BHD') // 1000 (3 decimal places)

语言

defaultLocale(): string

返回当前环境的默认区域.

import {defaultLocale} from '@formatjs/utils'

defaultLocale() // e.g., 'en-US'

时区

defaultTimezone(): string

返回当前环境的默认时区.

import {defaultTimezone} from '@formatjs/utils'

defaultTimezone() // e.g., 'America/New_York'

许可证

麻省理工学院

版本与发布记录

@formatjs/utils 共发布 45 个版本,首次发布于 2024/07/05;过去 12 个月发布了 21 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
2.2.12latest2026/08/302 个月前
2.2.112026/07/114 个月前
2.2.102026/06/045 个月前
2.2.92026/05/156 个月前
2.2.82026/05/126 个月前
2.2.72026/05/066 个月前

关于 @formatjs/utils 的常见问题

@formatjs/utils 是什么?

收集有用的公用设施

如何安装 @formatjs/utils?

在项目目录运行 npm install @formatjs/utils,或使用 pnpm add / yarn add / bun add。

@formatjs/utils 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@formatjs/utils 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@formatjs/utils 可以商用吗?

@formatjs/utils 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@formatjs/utils 的下载量有多少?

根据 npm 官方下载统计,@formatjs/utils 在 2026/10/16 – 2026/11/14 这 30 天内被下载 18,394 次,日均约 613 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@formatjs/utils 还在维护吗?

最新版本 2.2.12 发布于 2026/08/30(2 个月前);至今共发布 45 个版本,其中过去 12 个月发布了 21 个;首次发布于 2024/07/05。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。