私はJavaScriptで多くの計算を実行しています。丸められた数値を使用すると CPU 使用率が低下するかどうか疑問に思っていましたか? console.log を使用してコードの内部動作を見ると、数値の小数点以下 15 桁以上が表示されます。
質問する
79 次
2 に答える
1
高度に最適化されたエンジンは、整数と倍精度の違いを見分けることができる場合があります。たとえば、1+1 は整数演算を使用する可能性がありますが、1.0+1 は使用しない可能性があります。ほとんどの場合、この「整数性」はすぐに失われ、Math.pow、Math.sqrt などの関数はプロパティを失う可能性があります。ただし、私はこの動作に依存せず、丸められた数値でさえこの効果を持たない可能性があります (つまり、丸めた後もまだ浮動小数点数である可能性があります)。
また、余談ですが、JS エンジンにはおそらく非常に多くのオーバーヘッドがあるため、float と integer の使用の違いはそれほど大きくないでしょう (プロセッサ自体とオーバーヘッドで違いが 2 ~ 3 倍になることを考えると)おそらく少なくとも 10 倍です)。
于 2012-09-27T22:49:52.143 に答える
0
いいえ。JavaScriptは整数と実数を区別しません。倍精度浮動小数点数しかありません。
つまり、精度は整数または2進数(有効数字約15桁の範囲内)で最高になりますが、実際のパフォーマンスは、たとえあったとしても、それほど変化しません。
于 2012-09-27T22:47:31.130 に答える