listval=3250
                   a=10000;
   flags=false;//作为是否为空的参数,true为X,false为0
   for(i=1;i<=5;i++){
       nums=parseInt(listval/a);
   //alert(i);
if(i=1){
  if(nums=0){
                                              flags=true;
                                           }else{
                                              flags=false;
                                           }
}
if(flags){
    alert(i);
}else{
alert(flags);
}
   $(value+i).val(nums);
   listval=listval-nums*a;
   a = a/10
   }在将钱转换成大写时,对第一个为零到之后不为零的之前的用“X”表示没有。flags为判断标志,默认为false。在测试时出现无限循环。我实在搞不懂在哪里出错了。非常郁闷啊!!!!for循环无限循环

解决方案 »

  1.   

    if(i=1){
    这里永远把 i 设置成1
    根据你的业务逻辑 我觉得你希望
    if(i == 1)
    以后你写 逻辑表达式的时候 可以尝试把 常量写在左面
     if(1 == i)
    if(0 == i)
      

  2.   

    以前也犯过这种错误啊,debug了半天,最后知道真相的我眼泪掉下来,这其实算是一个写代码的习惯吧,虽然有点不符合自然思维,不过这还是值得保留的。