最近脑袋有点晕了,在javascript中写if-else if-else 的代码时候,居然给else添加了条件。代码如下:
<script> var i=10; if(i<=10) { alert(111); } else(i>10) { alert(222); } </script>
在IE9和chrome下执行这段脚本,发现并没有提示js错误,程序的执行结果是:先弹出111对话框,后弹出222对话框。也就是说if和else这2个分支都会执行,这根传统的c/java差别很大。项目中我写了与这个类似的脑残代码,结果看了好久没有看出问题。javascript作为解释型语言,语法要求和编译提示都不像java/c这样严格。编写javascript的时候,一定要细心和规范,不然可能会出现你觉得非常诡异的问题。
为什么上面的javascript代码能够正常执行呢?不清楚,欢迎大神们解释、指点。
时间: 2024-10-25 00:51:30