Angular 2 - 科学记数的数字管道

时间:2017-05-09 02:15:29

标签: angular angular-pipe

我正在使用数字管道(编号:'1.2-2')来舍入小数。它适用于标准格式数字,但对于科学格式数字(指数),结果以标准格式返回。

例如,如果我应用上述数管1.336274995924138e + 306我期望1.34E + 306,但我所得到的是1336274995924140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000。

同样在Angular JS 1.x中也能正常工作。

请告知我如何以与原始号码相同的符号取回结果。

1 个答案:

答案 0 :(得分:1)

对于num = 1.336274995924138e + 306

num.toPrecision(3)

以3个有效数字得出科学记数法......即。 1.34E + 306

这是一个带有自定义管道的Plunker示例,当数字很大时会使用 toPrecision ,否则,它将使用您一直使用的 DecimalPipe Custom Pipe Example

如果您想在代码库中加入它,请查看它在主app模块中的引用方式。