各位,请帮忙看下以下代码有什么错误,我找了半天也没发现错误,但运行后却不能正常执行。谢谢!----
<html>
<head>
<title>JavaScript计算器</title>
</head><script language="JavaScript">
var curState;
var curOper;
var num1;
var preOper;function setStartState()
{
  curState="beStart";
  num1=0;
  curOper="start";
  preOper=false;
}function addNum(i)
{
  if(preOper)
  {
    cal.total.value=i;
    preOper=false;
    
  }
  else
  {
    if(cal.total.value=="0")
    {
     cal.total.value=i;
     curState ="beInteger";
    }
    else
    {
     cal.total.value+=i;
    }
  }
  
}
function addPoint()
{
  if(curState=="beStart"||curState=="beInteger")
     {
       cal.total.value+=".";
       curState="beFloat";
     }
}
function cleartext()
 {
  cal.total.value="0";
  curState="beStart";
  curOper"start";
 }
 function count()
 {
  if(curOper!="start")
  {
  switch(curOper)
  {
   case "+":
   num1=parseFloat(num1)+parseFloat(cal.total.value);
   break;
   
   case "-":
   num1=parseFloat(num1)-parseFloat(cal.total.value);
   break;
   
   case "*":
   num1=parseFloat(num1)*parseFloat(cal.total.value);
   break;
   
   case "/":
   num1=parseFloat(num1)/parseFloat(cal.total.value);
   break;
  }
  cal.total.value=num1;
  preOper=true;
  }
  curOper="start";
  
 }
 
 function setOper(oper)
 {
  preOper = true;
    if(curOper = "start")
    {
     num1=0+cal.total.value;
     curOper = oper;
    }
    else
    {
     count();
     curOper=oper;
    }
 }
 
 function useFunc(func)
 {
   switch(func)
   {
    case "sin":
    cal.total.value=Math.sin(cal.total.value);
    preOper=true;
    break;
    
    case "cos":
    cal.total.value = Math.cos(cal.total.value);
    proOper=true;
    break;
    
    case "asin":
    cal.total.value = Math.asin(cal.total.value);
    proOper=true;
    break;
    
    case "acos":
    cal.total.value = Math.acos(cal.total.value);
    proOper=true;
    break;
    
    case "tan":
    cal.total.value = Math.tan(cal.total.value);
    proOper=true;
    break;
    
    case "atan":
    cal.total.value = Math.atan(cal.total.value);
    proOper=true;
    break;
    
    case "log":
    cal.total.value = Math.log(cal.total.value);
    proOper=true;
    break;
    
    case "exp":
    cal.total.value = Math.exp(cal.total.value);
    proOper=true;
    break;
    
    case "sqrt":
    cal.total.value = Math.sqrt(cal.total.value);
    proOper=true;
    break;
    
    case "1/x":
    cal.total.value = 1/cal.total.value;
    proOper=true;
    break;
    
    
   }
 }
</script><body onload="setStartState()">
<font size="6">JavaScript计算器</font>
<form name="cal"><table border="2" align="left">
<tr align="center">
<td colspan="6">
<input type="text" name="total" size="40" value="0">
</td>
</tr>
<tr align="center">
<td>
<input type="button" value="sin " onclick="useFunc('sin')">
</td>
<td>
 <input type="button" value="cos " onclick="useFunc('cos')">
 </td>
 <td>
 <input type="button" value="1  " onclick="addNum('1')">
 </td>
 <td>
 <input type="button" value="2  " onclick="addNum('2')">
 </td>
 <td>
 <input type="button" value="3  " onclick="addNum('3')">
 </td>
 <td>
 <input type="button" value="+  " onclick="setOper('+')">
 </td>
</tr>
<tr align="center">
<td>
<input type="button" value="asin" onclick="useFunc('asin')">
</td>
<td>
<input type="button" value="acos" onclick="useFunc('acos')">
</td>
<td>
<input type="button" value="4  " onclick="addNum('4')">
</td>
<td>
<input type="button" value="5  "  onclick="addNum('5')">
</td>
<td>
<input type="button" value="6  " onclick="addNum('6')">
</td>
<td>
<input type="button" value="-  " onclick="setOper('-')">
</td>
</tr>
<tr align="center">
<td>
<input type="button" value="tan " onclick="useFunc('tan')">
</td>
<td>
<input type="button" value="atan" onclick="useFunc('atan')">
</td>
<td>
<input type="button" value="7  "  onclick="addNum('7')">
</td>
<td>
<input type="button" value="8  " onclick="addNum('8')">
</td>
<td>
<input type="button" value="9  " onclick="addNum('9')">
</td>
<td>
<input type="button" value="*  " onclick="setOper('*')">
</td>
</tr>
<tr align="center">
<td>
<input type="button" value="log " onclick="useFunc('log')">
</td>
<td>
<input type="button" value="exp " onclick="useFunc('exp')">
</td>
<td>
<input type="button" value="0  " onclick="addNum('0')">
</td>
<td>
<input type="button" value=".  " onclick="addPoint()">
</td>
<td>
<input type="button" value="=  " onclick="count()">
</td>
<td>
<input type="button" value="/  " onclick="setOper('/')">
</td>
</tr>
<tr align="center">
<td>
<input type="button" value="sqrt" onclick="useFunc('sqrt')">
</td>
<td>
<input type="button" value="1/x " onclick="useFunc('1/x')">
</td>
<td>
<input type="button" value=" pi " onclick="cal.total.value = Math.PI">
</td>
<td>
<input type="button" value=" E  " onclick="cal.total.value = Math.E">
</td>
<td colspan="2">
<input type="button" value=" 清 除 " onclick="cleartext()">
</td>
</tr>
</table>
</form></body></html>