@clipboard-health/usa-states

中文文档
1.7.15发布于 2026/11/05MITTypeScriptCommonJS近 30 天下载 1.6万

美国的州和领土清单、州代码和州名类型以及名称/代码正常化者.

中文使用文档
文档目录6 节
  1. 目录
  2. 安装
  3. 使用量
  4. 国家时区
  5. 有序选择和地域例外
  6. 地方发展指挥部

@clipboard-health/usa-状态

美国的州和领土清单, StateCode 财务报告和审定财务报表 StateName 类型,以及名称/代码规范化.

目录

安装

npm install @clipboard-health/usa-states

使用量

import {
  isStateCode,
  type StateCode,
  type StateName,
  toStateCode,
  toStateCodeSet,
  toStateName,
  US_STATES,
} from "@clipboard-health/usa-states";

US_STATES.find((state) => state.code === "CA");
// => { name: "California", code: "CA" }

function parseStateCode(value: string): StateCode | undefined {
  return isStateCode(value) ? value : undefined;
}

// Normalize a state name or code (case- and whitespace-insensitive) to a `StateCode`.
toStateCode({ value: "  california " });
// => "CA"
toStateCode({ value: "Atlantis" });
// => undefined

// Normalize a list of names or codes to a `Set<StateCode>`, dropping unknown values.
toStateCodeSet({ values: ["California", "ny", "Atlantis"] });
// => Set { "CA", "NY" }

// Normalize a state name or code (case- and whitespace-insensitive) to a canonical `StateName`.
toStateName({ value: "  california " });
// => "California"
toStateName({ value: "ca" });
// => "California"
toStateName({ value: "Atlantis" });
// => undefined

interface LabelInput {
  name: StateName;
}

function toLabel(input: LabelInput): string {
  const { name } = input;

  return `State: ${name}`;
}

优先存储 StateCode 并决心 StateName 仅用于显示; 代码为稳定 用于比较各种服务。 两个常客都回来 undefined 未识别 输入——将此视为验证失败,而不是回到原始价值,否则 非正态输入到达存储 .

国家时区

STATE_TIME_ZONES 提供IANA代表时区名称的被冻结的非空列表,用于 每个被支持 StateCode。 。 。 . getStateTimeZones 使用 toStateCode 返回时 完整的命令数组。 呼叫者决定使用哪个条目 。 现有国家名称/代码和 US_STATES 对象不变.

import { getStateTimeZones, STATE_TIME_ZONES } from "@clipboard-health/usa-states";

STATE_TIME_ZONES.WA;
// => ["America/Los_Angeles"]
STATE_TIME_ZONES.TN;
// => ["America/New_York", "America/Chicago"]

getStateTimeZones({ state: "  tennessee " });
// => ["America/New_York", "America/Chicago"]

getStateTimeZones({ state: "Any" });
// => []
getStateTimeZones({});
// => []

帮助者接受 state?: string 返回被冻结的 readonly string[] 直接说 一个省略, 空白, Any,或未识别状态返回被冻结的空数组。 与 exactOptionalPropertyTypes, (中文(简体) ), 呼叫者应省略 state 当源值无效而非明确传递时 null 或者说 undefined。该软件包提供时区元数据;消费者处理选择、格式化、, 并使用明确的时区转换.

有序选择和地域例外

首个条目比较喜欢时区, 其本地日历日最早于协调世界时在当前下结束 时区规则. 定购是固定的;区可以平接,历史定购可能有所不同. 亚利桑那州 标准时间内的条目平齐。 该命令表达了这种偏好,而不是人口或人口 首都覆盖. 使用文档顺序和 IANA 规则, 而不是今天的 UTC 排序 抵消或替换固定 PST编号 :EST 页:1.

这些清单代表了目前的标准时间/数据查询制度,而不是每个历史性的IANA地点 或别名。 在历史订购时参考特定日期的时区规则 .

跨越联邦标准时区的14个州,加上亚利桑那州单独的DST案件,是:

状态首选的 IANA 区其他代表区地理基础
阿拉斯加语Name美洲/ 安克雷奇美洲/ 阿达克阿拉斯加和阿留申西部
亚利桑那州美洲/ 登弗美洲/ 菲尼克斯纳瓦霍DST的纪念活动和亚利桑那州大部分没有DST的纪念活动
佛罗里达州美洲/ 纽约New York美洲/ 芝加哥东部和西部
爱达荷州美洲/ 布瓦兹美洲/ 洛杉矶天使南山区和北太平洋
印第安纳州美洲/ 印度/印地安那波利斯美洲/ 芝加哥东部和中部县
堪萨斯州美洲/ 芝加哥美洲/ 登弗中西部山区县
肯塔基州美洲/ 纽约New York美洲/ 芝加哥东部和中部地区
密歇根州美洲/ 德特鲁特美洲/ 地中海上半岛东部和西部
内布拉斯加州美洲/ 芝加哥美洲/ 登弗中西部山区
内华达州美洲/ 登弗美洲/ 洛杉矶天使西温多佛的山地例外和太平洋的剩余
北达科他州美洲/ 芝加哥美洲/ 登弗中部和西南部山区
俄勒冈州美洲/ 布瓦兹美洲/ 洛杉矶天使马拉厄尔县的山区和太平洋的其余部分
南达科他州美洲/ 芝加哥美洲/ 登弗中西部山区
田纳西州美洲/ 纽约New York美洲/ 芝加哥东部和中部地区
德克萨斯州美洲/ 芝加哥美洲/ 登弗中西部山区

现有清单中的所有八个非国家条目都包括在内。 密克罗尼西亚用途 ["Pacific/Pohnpei", "Pacific/Chuuk"]: Pohnpei代表更早的UTC+11组(包括: 科斯雷根据现行规则),而楚克则代表了UTC+10组(包括雅普). 马歇尔 岛屿用途 Pacific/Majuro 包括克瓦贾林。 这些代表 选择不能重建群岛不同的历史规则。 现有支持列表 也包括自由联系国;这一元数据并不重新界定其政治地位.

2026年9月24日审查的地理和时区标识:

地方发展指挥部

见 package.json scripts 用于命令列表.

版本与发布记录

@clipboard-health/usa-states 共发布 42 个版本,首次发布于 2026/07/29;过去 12 个月发布了 42 个版本。

版本发布日期距今
1.7.15latest2026/11/054 天前
1.7.142026/11/055 天前
1.7.132026/11/045 天前
1.7.122026/10/3110 天前
1.7.112026/10/2812 天前
1.7.102026/10/2813 天前

关于 @clipboard-health/usa-states 的常见问题

@clipboard-health/usa-states 是什么?

美国的州和领土清单、州代码和州名类型以及名称/代码正常化者.

如何安装 @clipboard-health/usa-states?

在项目目录运行 npm install @clipboard-health/usa-states,或使用 pnpm add / yarn add / bun add。

@clipboard-health/usa-states 支持 TypeScript 吗?

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

@clipboard-health/usa-states 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@clipboard-health/usa-states 可以商用吗?

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

@clipboard-health/usa-states 的下载量有多少?

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

@clipboard-health/usa-states 还在维护吗?

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