老师点击退位键显示undefind

来源:3-5 计算器细节完善

Buck_messic

2020-08-03 22:38:22

http://img.mukewang.com/climg/5f28211409c0ded304030321.jpg

下面是代码:

<!DOCTYPE html>

<html>

<head>

<title></title>

<link rel="stylesheet" type="text/css" href="cals.css">

<script type="text/javascript" src="index.js"></script>

<script type="text/javascript"></script>

<body onload="init()">

<div id="div1">

<div id="div2">

<input type="text" name="num" id="num"/>

</div>

<div id="div3">

<input type="button" value="c" name="" id=""/>

<input type="button" value="←" name="" id=""/>

<input type="button" value="+/-" name="" id=""/>

<input type="button" value="/" name="" id=""/>

<input type="button" value="1" name="" id=""/>

<input type="button" value="2" name="" id=""/>

<input type="button" value="3" name="" id=""/>

<input type="button" value="*" name="" id=""/>

<input type="button" value="4" name="" id=""/>

<input type="button" value="5" name="" id=""/>

<input type="button" value="6" name="" id=""/>

<input type="button" value="-" name="" id=""/>

<input type="button" value="7" name="" id=""/>

<input type="button" value="8" name="" id=""/>

<input type="button" value="9" name="" id=""/>

<input type="button" value="+" name="" id=""/>

<input type="button" value="0" name="" id=""/>

<input type="button" value="." name="" id=""/>

<input type="button" value="=" name="" id=""/>

<input type="button" value="m" name="" id="imooc"/>

</div>

</div>

</body>

</html>



    js代码:

function init(){

var num=document.getElementById("num");

num.value=0;

num.disabled="disabled";


var oButton=document.getElementsByTagName("input");

var btn_num1;

var fh;

for(var i=0;i<oButton.length;i++){

oButton[i].onclick=function(){

if(isNumber(this.value)){

if(isNull(num.value)){

num.value=this.value;

}else{

num.value=num.value+this.value;

}

}else{

var btn_num=this.value;

switch(btn_num){

case "+":

btn_num1=Number(num.value);

num.value=0;

fh="+";

break;

case "-":

btn_num1=Number(num.value);

num.value=0;

fh="-";

break;

case "*":

btn_num1=Number(num.value);

num.value=0;

fh="*";

break;

case "/":

btn_num1=Number(num.value);

num.value=0;

fh="/";

break;

case ".":

num.value=dec_number(num.value);

break;

case "←":

num.value=back(num.value);

break;

case "c":

num.value="0";

break;

case "+/-":

num.value=sing(num.value);

break;

case "=":

switch(fh){

case "+":

num.value=btn_num1+Number(num.value);

break;

case "-":

num.value=btn_num1-Number(num.value);

break;

case "*":

num.value=btn_num1*Numbert(num.value);

break;

case "/":

if(Number(num.value)==0){

alert("除数不能为0")

num.value=0

}else{

num.value=btn_num1/Number(num.value);}

break;

}

break;

}

}

}

}

}


/*验证文本框是否为空或者0*/

function isNull(n){

if(n=="0"||n.length==0){

return true;

}else{

return false;

}

}


function isNumber(n){

//if(!isNaN(n)){

// return true;//参数是数字

//}else{

// return false;//参数不是数字

//}


return !isNaN(n);

}

function back(n){

   n=n.substr(0,n.length-1);

   if(isNull(n)){

      n="0";

   }

   return n;

}


function dec_number(n){

if(indexOf(".")==-1){

n=n+".";

}else{

return n

}

}


function sing(n){

n=Number(n)*-1

return n;

}


写回答

1回答

时间,

2020-08-04

同学,你好。运行同学的代码没有问题,同学可以看下js代码是否保存,或者在退位键位置输出下num.value的值,看是否可以得到正确结果。

http://img.mukewang.com/climg/5f28cd0c09cd89ce04600154.jpg

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

0

0 学习 · 3562 问题

查看课程