1

文字列の parseFloat には、文字列の文字数に制限がありますか? ここでは制限について何も表示されません: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseFloat

しかし、コンソールで次を実行すると、予期していなかった結果が表示されるようです。

parseFloat('1111111111111111'); // 16 characters long
// result 1111111111111111

parseFloat('11111111111111111'); // 17 characters long
// result 11111111111111112

誰かが私のためにこれを分解できますか?

4

1 に答える 1

2

Javascript では、浮動小数点数は倍精度値として格納されます。これらには有効桁数が約 16 桁あります。つまり、17 桁の数値が正確に格納されるとは限りません。

には任意の長さの数値を指定できますが、倍精度変数に格納できる最大値であるparseFloat()1.79769×10 308より大きい値を格納することはできません。

時間があれば、これを読むことをお勧めします:すべてのコンピューター科学者が浮動小数点演算について知っておくべきこと

于 2013-10-27T00:14:53.640 に答える