AOBODO.com

July 15, 2008

JS jscript做小数乘法运算出现浮点错误的解决办法

Filed under: life's shadow — Tags: , , , — admin @ 12:51 pm
在Javascript里计算小数乘法,容易出现浮点错误,例如:
  1. <script>
  2. document.write (1.1*1.3);
  3. document.write ("<br>");
  4. document.write (1.2*1.1);
  5. </script>
输出结果:
  1. 1.4300000000000001
  2. 1.32
解决问题的思路就是,先把因数放大为整数,最后再除以相应的倍数,这样就能得到正确的结果了。解决办法如下:
1、 在算式中解决
  1. <script>
  2. alert(1.1*(1.3*10)/10);
  3. </script>
2、添加到Number的原型方法里
  1. <script>
  2. Number.prototype.rate=function(){
  3. var oStr=this.toString();
  4. if(oStr.indexOf(".")==-1)
  5. return 1;
  6. else
  7. return Math.pow(10,parseInt(oStr.length-oStr.indexOf(".")-1));
  8. }
  9. function tran(){
  10. args=tran.arguments;
  11. var temp=1;
  12. for(i=0;i < args.length;i++)
  13. temp*=args[ i ]*args[ i ].rate();
  14. for(i=0;i < args.length;i++)
  15. temp/=args[ i ].rate();
  16. return temp;
  17. }
  18. </script></script>
使用方法:假如11*22.9,可以这样写tran(11,22.9),这样,问题就解决了。

April 24, 2008

FlashFXP 3.6 Final(正式版)注册码

Filed under: life's shadow — admin @ 1:04 am

经过多个 RC 版本以后,FlashFXP 终于发布了 3.6.0 Build 1240 的正式版,当然很快在 9Down 那边的回复里就出现了破解注册码  ,帖一个:

———————————————————
FLASHFXPxgA9UrTnxgAAAAC7W5MNJwTnsl73n0Vuu1AePJgEAG
41mgSvHSiDWi1Kg8B5xJNCCCAVCMr9Rtmo6u93NoQF27wg6KrQ
3RIE8Jz6Qy/YlnYIBf58aRJrG7rGITgQJ4KSmyK0wz4xySS+0H
N/9lJ65abJf7rB7m3R2vyjhakIKSzZnquXQ0/Rdv5nMS+Bbc7n
rMqoYnTURE8jeePVOgIO9a4N89ORDsPW4uEtPjCXiyk1hVcse3
3uZgJ/H5KriA==
———————————————————

重要注意事项:
因为 FlashFXP 在启动时会连接到网站的服务器检查许可的激活数量是否合法,因此公共的注册码肯定会遭到屏蔽,所以请在你的杀毒软件的防火墙中阻止 secure.flashfxp.comliveupdate.inicom.net 这两个地址,或者通过编辑 C:\Windows\System32\Drivers\etc\HOSTS 文件将这两个地址指向到 127.0.0.1。

Powered by WordPress, Design by Jena