相关疑难解决方法(0)

有没有办法抑制<input type ="number">的科学记数法?

我想用一个<input>元素输入最多八个小数点的数字.但是,如果我有一个<input type="number" step="0.00000001">并使用输入元素上的向上/向下箭头(在Chrome上;这里是jsfiddle),那么我得到小数字的科学记数法:

在此输入图像描述

如果我输入5,然后按箭头键,则会抑制科学记数法:

在此输入图像描述

有没有办法让浏览器显示1e-80.000000001

此外,这里是否有任何危险,如果数量足够小,我会遇到浮点舍入错误?

<input type="number" step="0.00000001">
Run Code Online (Sandbox Code Playgroud)

html floating-point html5 scientific-notation html-input

11
推荐指数
2
解决办法
5572
查看次数

局部指数表示法?

我正在尝试将数字转换为本地化字符串.

对于整数和货币值,它非常简单,因为字符串只是一系列数字和数字分组分隔符.例如:

  • 12 345 678 901 (保加利亚语)
  • 12.345.678.901 (加泰罗尼亚语)
  • 12,345,678,901 (英语)
  • 12,34,56,78,901 (印地语)
  • 12.345.678.901 (弗里斯兰)
  • 12?345?678?901 (普什图语)
  • 12'345'678'901 (德语)

我使用Windows GetNumberFormat函数来格式化整数(并GetCurrencyFormat格式化货币值).

但是有些数字不能用固定的符号来合理地表示,并且需要科学记数法:

  • 6.0221417930×10 23

或者更具体地说是E符号:

  • 6.0221417930E23

我怎样才能获得科学记数法的本地化版本?

我想我可以使用本地化数字来构建它:

6.0221417930E23
6,0221417930E23
6.0221417930e23
6·0221417930E23
6·0221417930e23
6,0221417930e23
6,,0221417930e23
6.0221417930E+23
6,0221417930E+23
6.0221417930e+23
6,0221417930e+23
6·0221417930E+23
6·0221417930e+23
6,,0221417930e+23
6.0221417930E23
6,0221417930E23
6.0221417930e23
6,0221417930e23
6·0221417930E23
6·0221417930e23
6,,0221417930e23
6.0221417930X10^23
6,0221417930X10^23
6.0221417930x10^23
6,0221417930x10^23
6·0221417930X10^23
6·0221417930x10^23
6,,0221417930x10^23
6.0221417930·10^23
6,0221417930·^23
6.0221417930.10^23
6,0221417930.10^23
6·0221417930·^23
6·0221417930.10^23
6,,0221417930.10^23
Run Code Online (Sandbox Code Playgroud)

但我不知道其他文化(除了我的文化)是否使用E进行取幂.

windows globalization winapi localization number-formatting

8
推荐指数
1
解决办法
409
查看次数