使用jscript脚本计算时会出错 parseInt(document....)+parseInt(document...);ordocument...+document.. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <script>alert(qswhAdd(10.1,0.11))function qswhAdd(n1,n2){var r1,r2,m;try{r1=n1.toString().split(".")[1].length}catch(e){r1=0}try{r2=n2.toString().split(".")[1].length}catch(e){r2=0}m=Math.pow(10,Math.max(r1,r2))return (n1*m+n2*m)/m}</script> http://expert.csdn.net/Expert/TopicView1.asp?id=789880 一个格式化数字的函数<SCRIPT LANGUAGE="JavaScript"><!--var a=123.45678;function formatnumber(num,dec){ if (dec>18) { alert("小位数不能超过18位"); } var zerostr = "00000000000000000000"; var tmp_num = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec); var tmp_str = tmp_num.toString(); var re_num = tmp_str; var pos = (tmp_str.indexOf(".")==-1)? 0 : tmp_str.indexOf("."); if (dec>0){ if (pos==0) { re_num = re_num+"."+zerostr.substring(0,dec); } else { if ((tmp_str.length-pos-1)<dec){ re_num = re_num+zerostr.substring(0,dec-(tmp_str.length-pos-1)); } } } return re_num;}alert(formatnumber(a,10));//--> 楼上的功能很象我的fixTo,也把我的贴出来大家参考一下:function fixTo(s,i){ if (s==null || s=="" || Math.round(s)==0) return 0; i = Math.round(i); if (isNaN(s) || i==0) return s; if (i==null || isNaN(i) || i<0) i=2; var v = Math.round(s*Math.pow(10,i)).toString(); if (/e/i.test(v)) return s; return v.substr(0,v.length-i)+"."+v.substr(v.length-i);}功能应该是差不多的,主要差别在于我对某些异常的情形返回了0或者原串,并且默认为保留两位小数。 循环添加行失败 求教JQuery Microsoft JScrip运行时错误,缷少对对象 他妈的气死了--没有权限?? 请教怎么设置write输出的字体大小 请问如何给一个HTML控件再增加一个事件?? 关于jquery $.load(url,data,callback) 问题请教 Javascript 是基于对象的语言,而不是面向对象的语言,这句话该如何理解? 如何动态改变表格中某一行的颜色 如何用js调出IE的打印预览窗口预览当前页面? 想在js的一个方法里面同时刷新两个frame ,怎么办? 请问哪里有雪花飘飘的JAVASCRITP下载代码?
<script>
alert(qswhAdd(10.1,0.11))
function qswhAdd(n1,n2){
var r1,r2,m;
try{r1=n1.toString().split(".")[1].length}catch(e){r1=0}
try{r2=n2.toString().split(".")[1].length}catch(e){r2=0}
m=Math.pow(10,Math.max(r1,r2))
return (n1*m+n2*m)/m
}
</script>
<!--
var a=123.45678;
function formatnumber(num,dec){
if (dec>18) { alert("小位数不能超过18位"); }
var zerostr = "00000000000000000000";
var tmp_num = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
var tmp_str = tmp_num.toString();
var re_num = tmp_str;
var pos = (tmp_str.indexOf(".")==-1)? 0 : tmp_str.indexOf(".");
if (dec>0){
if (pos==0) { re_num = re_num+"."+zerostr.substring(0,dec); }
else {
if ((tmp_str.length-pos-1)<dec){
re_num = re_num+zerostr.substring(0,dec-(tmp_str.length-pos-1));
}
}
}
return re_num;
}
alert(formatnumber(a,10));
//-->
if (s==null || s=="" || Math.round(s)==0) return 0;
i = Math.round(i);
if (isNaN(s) || i==0) return s;
if (i==null || isNaN(i) || i<0) i=2;
var v = Math.round(s*Math.pow(10,i)).toString();
if (/e/i.test(v)) return s;
return v.substr(0,v.length-i)+"."+v.substr(v.length-i);
}功能应该是差不多的,主要差别在于我对某些异常的情形返回了0或者原串,并且默认为保留两位小数。