S2.02.3Locale-specific negative-number notation设计

负数的表示方式不同

别名: 负数格式 · 会计负数 · negative pattern

概念解释

地区化负数表示(locale-specific negative-number notation)是由数字格式模式决定负号的字符、位置、间距及是否使用括号或会计样式。负值可能显示为前置或后置符号,也可能在货币报表中以括号表达。底层符号仍应是负的数值语义,而不是把括号、颜色或连字符存成数据。

机制

数字格式器把负子模式与数字系统、货币符号和双向文本规则一起应用。在 RTL 或混合方向界面中,视觉上位于数字一侧的符号不等于字符串中的简单前后拼接。应使用格式器输出的 locale minusSign(包括必要的双向控制标记),而不是自行替换或拼接 ASCII hyphen-minus。会计模式可能用括号对齐正负金额,但颜色只能是冗余提示。

边界

负数与“下降”“亏损”“欠款”不是同一语义:变化量为负、余额为负和百分比下降需要不同标签与基线。底层 IEEE 负零与非零负数经舍入后显示为零也不同;普通财务界面可按领域选择隐藏负零、增加精度或标为近似,科学场景可能要保留方向性,但显示策略不得改写原值。数学、编程或协议文本则可能要求固定 ASCII 语法。

怎么落地

  • 保存有符号数值并使用目标 locale 与用途对应的 decimal、percent、currency 或 accounting formatter。
  • 为负值提供文字或结构化语义,让屏幕阅读器读出“负”或业务含义;不要只依赖红色、括号位置或视觉方向。
  • 分别测试底层负零、舍入后显示为零和极小负数,并为 formatter 的 sign-display 与舍入组合规定可判定预期;再覆盖货币、百分比、RTL 与复制粘贴。
  • 排序和计算使用原始数值;导出时明确是本地显示格式还是机器格式,避免下游按括号或颜色猜正负。

延伸

  • 同组S2.02.1 小数点与千分位符号随地区互换 · S2.02.2 分组位数不都是三位 · S2.02.4 数字输入需接受本地格式
  • 相邻S2.03 货币与价格 · S2.05 百分比与比例
  • 站内检索CLDR negative pattern · accounting number format · localized minus sign

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/S2.02.3