博客列表 >迷你计算机

迷你计算机

枫的博客
枫的博客原创
2019年05月19日 14:41:48857浏览

迷你计算机用的知识点

1、if..else if语句
2、switch语句
3、isNaN()  判断输入值是否为数字
4、parseFloat()  将数字的字符串装换成number,防止使用运算符‘+’变成值变成字符串
5、Math.round()  将数值四舍五入取整
6、Dom的个元素获取
7.扩展:Math.floor()是去除小数点后的数字取整
        Math.random()随机获取0~1之间的数字

迷你计算机DOM

<div class="box">
   <h2>小小计算器</h2>
   <form>
      <table>
         <tr>
            <td><input type="text" name="opt1" placeholder="操作数1" autofocus></td>
            <td>
               <select name="option">
                  <option value="null">请选择操作</option>
                  <option value="add"> + </option>
                  <option value="sub"> - </option>
                  <option value="mul"> * </option>
                  <option value="div"> / </option>
               </select>
            </td>
            <td><input type="text" name="opt2" placeholder="操作数2"></td>
            <td><button type="button">计算</button></td>
         </tr>
         <tr>
            <td colspan="2" align="right"><h3>结果:</h3></td>
            <td colspan="2" align="left"><h3 id="result"></h3></td>
         </tr>
      </table>
   </form>
</div>

迷你计算机的JS

var opt1=document.getElementsByName('opt1')[0];
   var opt2=document.getElementsByName('opt2')[0];
   var bt=document.getElementsByTagName('button')[0];
   bt.addEventListener('click',vaule);
   function vaule() {
      if(opt1.value.length===0){
         alert('操作数1不能为空');
         opt1.focus();
         return false //退出函数,否则下面值会判断
      }else if(isNaN(opt1.value)){
         alert(('操作数1必须是数字'));
         opt1.focus();
         return false;
      }else if(opt2.value.length===0){
         alert('操作数2不能为空');
         opt2.focus();
         return false
      }else if(isNaN(opt2.value)){
         alert(('操作数1必须是数字'));
         opt2.focus();
         return false;
      }else {
         var data1=parseFloat(opt1.value); //parseFloat() 将数值转换成number
         var data2=parseFloat(opt2.value);
      }
      var option=document.getElementsByName('option')[0];
      var optVale=option.value;
      switch (optVale) {
         case 'null':
            alert('请选择操作符');
            option.focus();
            return false;  //退出函数,否则会执行下面结果
         case 'add':
            var flag='+';
            var data=data1+data2;
            break;
         case 'sub':
            var flag='-';
            var data=data1-data2;
            break;
         case 'mul':
            var flag='*';
            var data=data1*data2;
            break;
         case 'div':
            var flag='/';
            if(data2===0){
               alert('除数不能为0')
            }else {
               var data=data1/data2;
               data=Math.round(data*100)/100;  //Math.round 将数值转换成整数
            }
      }
      var result=document.getElementById('result');
      var str='<span style="color:coral">';
      str+=data1+flag+data2+'='+data;
      str+='</span>';
      result.innerHTML=str;
   }
</script>


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议