⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 day5_3.html

📁 对javascript的简单介绍和讲解
💻 HTML
字号:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312-80">
<style type="text/css">
<!--
a:link {  color: blue; text-decoration: none}
a:visited {  color: purple; text-decoration: none}
a:hover {  color: #CC0033; text-decoration: underline}
-->
</style>
<title>JavaScript高级教程</title>
</head>

<body topmargin="1" leftmargin="2">

<table border="0" width="591" cellspacing="0">
  <tr> 
    <td bgcolor="#ffff99" width="451">JavaScript高级教程 - 第五课</td>
  </tr>
  <tr> 
    <td bgcolor="#FF6600" width="451"><a href="mailto:thau@wired.com">Thau</a></td>
  </tr>
</table>
<div align="left">

  <table border="0" width="630" cellspacing="0">
    <tr> 
      <td width="458" valign="top" align="left" rowspan="2"><small><small><br>
        </small></small><strong>第三页:<font size="3">一般性程序错误</font></strong>
        <p>多数错误只是无聊的语法错误。记住关闭那些引号,大括号和<br>
          小括号会花费很长时间,不过幸运的是JavaScript自动错误检<br>
          测器能捕获大部分此类错误。虽然JavaScript错误检测器随着<br>
          日渐复杂的流览器而不断完善,但是一些错误仍会溜走。下面<br>
          是一些需要留意的常见错误:</p>
        <p><strong>混淆变量名或函数名</strong></p>
        <blockquote> 
          <p>大写和复数变量和函数名产生的错误令人烦恼地经<br>
            常出现,有时JavaScript错误检测器不能捕获它们。<br>
            通过建立和坚持使用一种对变量和函数的命名协定,<br>
            会大大减少这些麻烦的数量。例如,我全部用小写<br>
            字母定义变量,并用下划线代替空格 (my_variable,<br>
            the_data, an_example_variable),用内置符号表<br>
            示函数 (addThreeNumbers(), writeError()等)。<br>
            我避免使用任何复数,因为我总是忘记那些变量是<br>
            不是复数。</p>
        </blockquote>
        <p><strong>偶然地使用了保留字</strong></p>
        <blockquote> 
          <p>一些字不能作为变量名,因为它们已经被JavaScript<br>
            使用。例如,不能定义一个叫“if”的变量,因为<br>
            它实际上是JavaScript的一部分 - 如果使用“if”,<br>
            你会遇到各种麻烦。当你因为使用命名为“if”的<br>
            变量而变得疯狂时,一个叫做“document”的变量<br>
            是很诱人的。不幸的是,“document”是一个<br>
            JavaScript对象。另一个经常遇到的问题是把变量<br>
            命名为“name”(窗体元素有“names”属性)。把<br>
            变量命名为“name”不会总出问题,只是有时 - <br>
            这会更使人迷惑 - 这就是避免使用“name”变量的<br>
            原因。</p>
          <p>不幸的是,不同的流览器有不同的保留字,所以没<br>
            有办法知道该回避哪些字。最安全的办法是避免使<br>
            用已经成为JavaScript一部分的字和HTML使用的字。<br>
            如果你因为变量遇到问题,并且不能发现哪儿错了,<br>
            试着把变量改个名字。如果成功了,你或许就避开<br>
            了保留字。</p>
        </blockquote>
        <p><strong>记住在逻辑判断时应该用两个等号</strong></p>
        <blockquote> 
          <p>一些流览器能捕获这种错误,有些却不能。这是一<br>
            种非常常见的错误,但是如果流览器不能替你指<br>
            出来,你就很难发现。下面是一个这种错误的例子:</p>
          <blockquote> 
            <pre>var the_name = prompt(&quot;what's your name?&quot;, &quot;&quot;);
if (the_name = &quot;the monkey&quot;)
{
    alert(&quot;hello monkey!&quot;);
} else {
    alert(&quot;hello stranger.&quot;);
}</pre>
          </blockquote>
          <p>这段代码将产生“hello monkey!”警告对话框 - <br>
            不管你在提示里敲的是什么 - 这不是我们希望的。<br>
            原因是在if-then语句中只有一个等号,这句话告<br>
            诉JavaScript你想让一件事等于另一件。假设你在<br>
            提示中敲的是“robbie the robot”。最开始,变<br>
            量the_name的值是“robbie the robot”,但是随<br>
            后if语句告诉JavaScript你想把the_name设为<br>
            “the monkey.”。于是JavaScript很高兴地执行你<br>
            的命令,送一个“true”消息给if-then语句,结果<br>
            警告对话框每次都出现“hello monkey!”。</p>
          <p>这种阴险的错误会使你发疯,所以注意使用两个<br>
            等号。</p>
        </blockquote>
        <p><strong>偶然给变量加上了引号,或忘了给字符串加引号</strong></p>
        <blockquote> 
          <p>我不时遇到这个问题。JavaScript区分变量和字符<br>
            串的唯一方法是:字符串有引号,变量没有。下面<br>
            有一个明显的错误:</p>
          <blockquote> 
            <pre>var the_name = 'koko the gorilla';
alert(&quot;the_name is very happy&quot;);</pre>
          </blockquote>
          <p>虽然the_name是一个变量,但是程序还会产生一个<br>
            提示“the_name is very happy,”的警告对话框。<br>
            这是因为一旦JavaScript看见引号包围着某些东西<br>
            就不再考虑它,所以当你把the_name放在引号里,<br>
            你就阻止了JavaScript从内存中查找它。</p>
          <p>下面是一个不太明显的此类错误的扩展(我们已经<br>
            在第三天的课程里见过):</p>
          <pre>function wakeMeIn3()
{
    var the_message = &quot;Wake up!  Hey!  Hey!  WAKE UP!!!!&quot;;
    setTimeout(&quot;alert(the_message);&quot;, 3000);
}</pre>
          <p>这里的问题是你告诉JavaScript三秒后执行alert<br>
            (the_message)。但是,三秒后the_message将不再<br>
            存在,因为你已经退出了函数。这个问题可以这样<br>
            解决:</p>
          <pre>function wakeMeIn3()
{
   var the_message = &quot;Wake up!&quot;;
   setTimeout(&quot;alert('&quot; + the_message+ &quot;');&quot;, 3000);
}</pre>
          <p>把the_message放在引号外面,命令“alert('Wake<br>
            up!');”由setTimeout预定好,就可以得到你想<br>
            要的。</p>
          <p>这只是一些可能在你的代码中作祟的很难调试的<br>
            错误。一旦发现了它们,就有不同的或好或差的方<br>
            法来改正错误。你很幸运,因为你能从我的经验和<br>
            错误中获益。<a href="day5_4.html">&gt;&gt;</a></p>
        </blockquote>
        <p align="left"><font face="宋体" size="3" color="#000000"><strong>JavaScript高级教程</strong></font><font color="#FF0000" face="宋体" size="3"><br>
          </font><font color="#FF3300" size="3">第一页</font><font size="3"> </font><a href="day5_1.html"><font size="3" face="verdana, arial, geneva, sans-serif">JavaScript</font><font size="3">高级教程</font><font size="3" face="verdana, arial, geneva, sans-serif">- 
          </font><font size="3">第</font><font size="3" face="verdana, arial, geneva, sans-serif">5</font><font size="3">天</font></a><font size="3"> 
          <br>
          </font><font color="#FF3300" size="3">第二页 </font><font size="3"><a href="day5_2.html">打印变量</a><br>
          </font><font color="#FF3300" size="3">第三页 </font><font size="3">一般性程序错误<br>
          </font><font color="#FF3300" size="3">第四页 </font><font size="3"><a href="day5_4.html">修正错误</a><br>
          </font><font color="#FF3300" size="3">第五页 </font><font size="3"><a href="day5_5.html">好的编程实践</a><br>
          </font><font color="#FF3300" size="3">第六页 </font><font size="3"><a href="day5_6.html">按速度优化JavaScript代码</a><br>
          </font><font color="#FF3300" size="3">第七页 </font><a href="day5_7.html"><font size="3">下面讲什么?</font></a></p>
        <p align="left">[<a href="day1_1.html">第1课</a>][<a href="day2_1.html">第2课</a>][<a href="day3_1.html">第3课</a>][<a href="day4_1.html">第4课</a>][第5课]</p>
        <hr align="left">
        <!--webbot bot="Include" U-Include="../../copyright.html" TAG="BODY" startspan --> 
        <p><font face="verdana, arial, geneva, sans-serif" size="2"><a href="http://phtshop.yeah.net" target="_top">本文根据 
          网猴 相关文章改编,版权归原作者所有。</a> </font></p>
        <!--webbot bot="Include" endspan i-checksum="63119" --> </td>
    </tr>
    <tr> </tr>
  </table>
</div>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -