帮我解释下下面代码什么意思

varstring=2.2;varname=4;functionvarname(string,name){varyoo=Math.pow(10,name);//10^4=... var string=2.2;

var name=4;
function varname(string,name)
{
var yoo=Math.pow(10,name);//10^4=10000
string=new String(Math.round(string*yoo)/yoo);//2.2*10000=22000/10000=2.2

//判断string是否有“.”
if(string.lastIndexOf(".")==-1)//flase
{
string=string+".";
}
var boo=name-(string.length-(string.lastIndexOf(".")+1));//4-(2-2)=4
for(;boo>0;boo--)
{

string=string+"0";//答案应该是2.20000为什么会是2.2000
}

return string;
}
展开
 我来答
阴阳曈
2015-03-06 · 超过11用户采纳过TA的回答
知道答主
回答量:18
采纳率:0%
帮助的人:18.5万
展开全部
var boo=name-(string.length-(string.lastIndexOf(".")+1));//4-(2-2)=4这一句你理解错了,string.leng=3;因为2.2包括点是3个字符,string.lastIndexOf(".")+1是1+1=2;所以boo的结果为3不是4;答案应该是2.2000
更多追问追答
追问
length不是从0开始索引吗。
length不是从0开始索引吗?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式