js 的一些找错心得

2015-07-13  本文已影响88人  snoweek

学习每一种语言,即使觉得简单,其实在编程的过程中,仍旧会遇到这样那样的问题使程序运行不出来,其实就是最简单最基本的原因,下面贴几个例子。
1 .

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN">
<head>
<title> </title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
        function  open(){
            alert("单击时执行了脚本");
</script>
</head>
    <body >
        浏览器在遇到用户事件时执行了脚本
    </br>
    <form method="post" action="">
        <input type="button" name="b" value="单击" onclick="open()" />
        </form>
    </body>
</html>

以上脚本,每次运行单击按钮时,就处于无限的链接状态中,于是怀疑,这么简单,怎么可能出问题呢,真是百思不得其解。不知你看出来了吗?
在命名函数的时候,我使用了关键字open,改个名字如newopen,就可以顺利运行了。
切记,任何一种语言,在命名变量或函数的时候,都不能使用关键字。当然,若是合成词汇,关键字是可以作为其中的一部分出现的。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN">
<head>
<title>背景颜色自动变换</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
            var arraycolor=new Array("#00FF66","#FFFF99","#99CCFF","#FFCCFF","#FFCC99","#00FFFF","#FFFF00","#FFCC00","#FF00FF");
                        var n=0;
            function turncolors(){
                if(n==(arraycolor.length-1)) n=0;
                n++;
                document.bgColor=arraycolor[n];
            } 
        </script>
</head>
    <body>
        用按钮随意改变颜色
        <form method="post" action="">
        <input type="button" name="b" value="变换颜色" onclick="turnColors()" />
    </form>
    </body>
</html>

以上代码错误源于,js是一种严格区分大小写的语言。因此,当单击按钮时,触发的程序是turnColors(),而我定义的是turncolors(),当然找不到啦。
3还有一种更难发现,却几乎不能更愚蠢的错误了,那就是中英文状态转换。而这其中,最常见当属分号,尤其在这种情况下,刚输完中文,立马输入分号,根本想不起来切换状态,有木有!我现在也是非常经常栽在这个错误上。

上一篇 下一篇

猜你喜欢

热点阅读