为了账号安全,请及时绑定邮箱和手机立即绑定

解释一下代码含义,主要是if语句

解释一下代码含义,主要是if语句

qq___467 2018-05-31 16:49:55
<script>       var s1 = "";       var s2 = "";       var s3 = "";       var s4 = "";       var s5 = "";//定义变量       function view(val){         var a = document.getElementById(val);//定义变量a,把val值给变量a          s1 = a.innerHTML;//将表格内的变量a赋值给s1                if(s1=="+" || s1=="-" || s1=="*" || s1=="/"){           s3 = s1;           s1 = "";        }         if(s3=="+" || s3=="-" || s3=="*" || s3=="/"){          add2(s1);        }         if(s3==""){          add1(s1);        }      }       function add1(s1){        s2 = s2 + s1;        show();      }      function add2(s1){         s4 = s4 + s1;         show();      }       function cal(){        switch(s3){           case "+":{             s5 = (String)((parseFloat(s2)+parseFloat(s4)).toFixed(2));//parseFloat解析字符串,返回一个浮点数,固定2位小数,             result.innerHTML = s5;                              break;           }           case "-":{             s5 = (String)((parseFloat(s2)-parseFloat(s4)).toFixed(2));                                     result.innerHTML = s5;             break;           }           case "*":{             s5 = (String)((parseFloat(s2)*parseFloat(s4)).toFixed(2));            result.innerHTML = s5;            break;           }             case "/":{             s5 = (String)((parseFloat(s2)/parseFloat(s4)).toFixed(2));            result.innerHTML = s5;             break;          }         }      }       function show(){         var result=document.getElementById("result"); result.innerHTML = s2+s3+s4;       }   </script>
查看完整描述

7 回答

已采纳
?
漂流風車

TA贡献70条经验 获得超21个赞

....你这~~加好友我给你翻译?不知道你哪块看不懂啊

查看完整回答
反对 回复 2018-05-31
?
漂流風車

TA贡献70条经验 获得超21个赞

show()就是获取ID值为result的标签然后将标签内部放上s2+s3+s4的值

s1到s5是先声明一个空的变量,一般这么早是为了在后面好赋值使用

add2和add1关系你别管你关注他们作用就行了

        if(s1=="+" || s1=="-" || s1=="*" || s1=="/"){//如果s1的值慢支条件执行
          s3 = s1;//将s1的值赋值给s3
          s1 = ""; //这里是将s1清空的
       }

if(s3=="+" || s3=="-" || s3=="*" || s3=="/"){ //如果满足条件执行

         function add2(s1){//将是的值传进来本身的写法是add2(s1)就是将s1的值传进来运行

        s4 = s4 + s1;//将s4+s1的值赋予s4

        show(); //这里是用来显示将s2+s3+s4的值放在页面上的

     }; 

}


//上面我加了点作用,这一段你自己加上发出来,别管其他的 你写出来他们是干嘛的,他们的作用

//然后你看他们是在哪调用的,这一步步做了什么,你就能懂了,别管什么关系一句一句注释出来作用

if(s3==""){ 
        

    function add1(s1){ 

           s2 = s2 + s1;  

          show(); 

     }

查看完整回答
1 反对 回复 2018-06-02
  • qq___467
    qq___467
    if(s3==""){ //如果s3里面什么也没有     function add1(s1){             s2 = s2 + s1; //将s2+s1的值赋给s2            show(); //页面显示result等于s2+s3+s4      } }
  • qq___467
    qq___467
    如果加减乘除存在s3里面 s4=s4+s1(s1里面没有值,因为给了s3) //这里有个问题,既然s1没值,这句也没啥意义啊 result.innerHTML=s2+s3+s4 结果等于s2+运算符+s4(这里的怎么加的在一起?‘+’是连接符号吗?)
  • 漂流風車
    漂流風車
    是空字符串+就会作为连接符链接两边,+号运算的时候会链接字符串和数字 而s1++ 这种自增运算符会将类型自动做转换比如a="1";这个1是字符串a++救是2而a+1就是"11". 最简单的做法,你可以试着console.log()看看没意见输出的s1到s5的值 tapyof(s1)可以返回值得数据类型, 不好意思我也不常在没法和你及时交流 ~~ 在写js代码的时候要常用console.log();看代码先运行了哪一步后运行了哪 运行到哪停止了
点击展开后面1
?
漂流風車

TA贡献70条经验 获得超21个赞

if(s1=="+" || s1=="-" || s1=="*" || s1=="/"){

if就等于如果(括号内的条件满足或者值为true就运行大括号括号里面的语句)

==是比较等号两边的值是不是相等  不比较数据类型

||是或者的意思

&&是并且

 var s1 = "";是什么一个变量值为空


如果s1 == (值等于) "+"(加号)  

||或者  s1的值  等等于  减号

或者s1 等等与乘号

或者s1 等等于除号


得走了 打不完了  你先看着吧

查看完整回答
1 反对 回复 2018-05-31
  • qq___467
    qq___467
    下个if语句里面的调用add2(s1),和下下个if语句调用add1(s1),和show这几个函数之间的关系是怎样的?还有s(1-5)这几个变量代表的是什么
  • 7 回答
  • 0 关注
  • 1598 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信