在C#中获得相同的JavaScript值double double value
问题描述:
我希望让C#打印出double值,以便通过JS打印出double值。在C#中获得相同的JavaScript值double double value
对于JavaScript, 我
var x=value;
console.log(value);
对于C# 我用下面的代码来模仿的JavaScript
string number = decimal.Parse(((double)value).ToString("G17"), System.Globalization.NumberStyles.Float).ToString();
Console.WriteLine(number);
当
value=4.84143144246472090e+00
我
JS:4.841431442464721
C#:4.8414314424647209
当我使用.ToString("G16")
作为C#时,我将得到JS和C#以前的值相等的值。然而,对于
value=1.03622044471123109e-01
我
JS:0.10362204447112311
C#:0.1036220444711231
我如何让C#双值有JS同样的打印输出?
仅供参考:
为JS精密 http://www.w3schools.com/js/js_numbers.asp为C#精密信息
信息 https://msdn.microsoft.com/en-us/library/kfsatb94(v=vs.110).aspx
答
您可以使用.toFixed()
:
console.log(value.toFixed(16));
的.toFixed()
函数返回一个字符串,在约它并不明显。
谢谢,但我需要C#行为来模仿JS,而不是相反。 – paulee