我想乘到數類型變量:代碼是這樣的::ActionScript 3.0中數量型乘法錯誤..
trace(6.60*6);// !=39.6
var a:Number=6.6;
var b:Number=6;
trace(a*b);// !=39.6
它不等於39.6的動作腳本3.0 ..而不是顯示39.5999999994 ...
我想乘到數類型變量:代碼是這樣的::ActionScript 3.0中數量型乘法錯誤..
trace(6.60*6);// !=39.6
var a:Number=6.6;
var b:Number=6;
trace(a*b);// !=39.6
它不等於39.6的動作腳本3.0 ..而不是顯示39.5999999994 ...
這是IEEE標準的浮點運算的一個副產品。如果你想真正的原因,檢查本文:
http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
這其中大部分來自的ActionScript的JavaScript根源,並在Javascript中一切浮點。整數和浮點數學之間沒有區別,所以奇怪的錯誤會突然出現,不會在其他語言中出現,但是如果您一直使用浮點數,它們會出現。
謝謝大家...... :) – warelord 2012-01-10 07:16:52
我從來沒有舍入到精密的ActionScript中完全「乾淨的感覺」的方式頭,下一個最好的東西可以在這裏找到:
其實,現在我正在考慮它,我想不出任何語言語言,其中'a * b == 39.6'。 – 2012-01-06 19:01:08