r=(6-8*7+(9-8);//errortry catch只能catch运行错误,
不能catch语法错误语法错误
相当于还没编译通过
自然去不了运行阶段

解决方案 »

  1.   

    Javascript是解释语言,如果语法不正确会造成无法继续解释下去。
    Try{}catch指的是捕捉异常时间,而不是语法错误。
      

  2.   

    谢谢楼上的。
    我原意是想判断给定的一个算术表达式语法是否合法,看来是不能用这种方法了,那还有其他的方法,要自己写给function去判断算术表达式是否合法好像还挺复杂的,请问有没有什么好方法?谢了
      

  3.   

    try:
    <script>
    try{
     r=eval("(6-8*7+(9-8)");
    }catch(e){  //===>Exception 不需要
    alert("error");
    }
    </script>