Javascript数字分隔符?

Luc*_*iva 5 javascript

某些语言,如 Java 和 C++,允许您使用数字分隔符。为了提高可读性,您可以对千分之位数进行分组:

1_000_000_000
Run Code Online (Sandbox Code Playgroud)

但不仅是每千人;你真的可以在任何地方使用它。假设你有一些以厘米为单位的价值。像这样将它分开,可以让人类更容易将其作为米来阅读:

10_00  // 10 meters
Run Code Online (Sandbox Code Playgroud)

如果我们也可以在 Javascript 中使用它,那不是很好吗?

Luc*_*iva 12

你猜怎么着?它现在正在成为一件事:-)

它适用于任何数字基础:

const decimal = 1_234;
const binary = 0b1000_0101;
const hex = 0x12_34_56_78;
Run Code Online (Sandbox Code Playgroud)

截至 2020 年 5 月,所有主要浏览器(Chrome、Firefox、Edge、Safari、Opera)都支持它(来源 1来源 2)。如果您在服务器端工作,Node.js v12.5.0 也已经支持它。哦,还有电子

有趣的提示:虽然所有浏览器都支持,但这还不是任何 ECMAScript 版本的一部分。它仍然是第 3 阶段的提案(尽管当它达到第 4 阶段时,它基本上可以发布了)。很高兴看到浏览器正在迅速赶上新的提案。

  • @MixMasterMike 这不是 ECMAScript 2018 的一部分(甚至不是 2019 年)。这是第三阶段提案,尚未准备好发布。我编辑了我的答案以添加该信息。您只能通过 v8 和使用它的项目(Chrome、Nodejs、Electron 等)获得此功能。无论您使用什么平台,请务必检查它是否至少使用 v8 7.5。嗯,看起来 Babel 也支持它(参见其他答案)。 (2认同)