专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Javascript教程 » javascript运算符:JavaScript 4则运算 »正文

javascript运算符:JavaScript 4则运算

来源: 发布时间:星期六, 2009年2月14日 浏览:0次 评论:0
="t18"><script type="text/javascript">
var alsoAString = '25';
var isANumber = 25;
// var isEqual = (alsoAStringisANumber); // This is true, they are both 25.
var isEqual = (alsoAString=isANumber); // False , _disibledevent=>//alert(floatError);

//除法用来得到精确除法结果
//介绍说明:javascript除法结果会有误差在两个浮点数相除时候会比较明显这个返回较为精确除法结果
//:accDiv(arg1,arg2)
//返回值:arg1除以arg2精确结果
function accDiv(arg1,arg2){
var t1=0,t2=0,r1,r2;
try{t1=arg1.toString.split(".")[1].length}catch(e){}
try{t2=arg2.toString.split(".")[1].length}catch(e){}
with(Math){
r1=Number(arg1.toString.replace(".",""))
r2=Number(arg2.toString.replace(".",""))
(r1/r2)*pow(10,t2-t1);
}
}

//给Number类型增加个div思路方法起来更加方便
Number.prototype.div = function (arg){
accDiv(this, arg);
}

//乘法用来得到精确乘法结果
//介绍说明:javascript乘法结果会有误差在两个浮点数相乘时候会比较明显这个返回较为精确乘法结果
//:accMul(arg1,arg2)
//返回值:arg1乘以arg2精确结果
function accMul(arg1,arg2)
{
var m=0,s1=arg1.toString,s2=arg2.toString;
try{ms1.split(".")[1].length}catch(e){}
try{ms2.split(".")[1].length}catch(e){}
Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m)
}

//给Number类型增加个mul思路方法起来更加方便
Number.prototype.mul = function (arg){
accMul(arg, this);
}

//加法用来得到精确加法结果
//介绍说明:javascript加法结果会有误差在两个浮点数相加时候会比较明显这个返回较为精确加法结果
//:accAdd(arg1,arg2)
//返回值:arg1加上arg2精确结果
function accAdd(arg1,arg2){
var r1,r2,m;
try{r1=arg1.toString.split(".")[1].length}catch(e){r1=0}
try{r2=arg2.toString.split(".")[1].length}catch(e){r2=0}
m=Math.pow(10,Math.max(r1,r2))
(arg1*m+arg2*m)/m
}

//给Number类型增加个add思路方法起来更加方便
Number.prototype.add = function (arg){
accAdd(arg,this);
}

document.writeln("未改进运算:7*0.8="+7*0.8+"\<br>");
document.writeln("改进以后运算:7*0.8="+(7).mul(0.8)+"\<br>");

document.writeln("未改进运算:0.06+0.01=" + 0.06+0.01 +"\<br>")
document.writeln("改进后运算:0.06+0.01=" + 0.06.add(0.01) +"\<br>")
</script>
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: