1.7 编写第一行JavaScript代码
千里之行,始于足下。下面将学习JavaScript编程工具的安装、代码编写位置、代码注释、程序调试工具等内容。相比其他编程语言,JavaScript简单明了,对初学者十分友好。
1.7.1 编程工具
使用任何一个文本编辑器都可以开发JavaScript程序,最简单的文本编辑器就是Windows系统自带的记事本,它可以写JavaScript程序,但是并不好用。为了开发方便,我们使用IDE(Integrated Development Environment,集成开发环境)开发JavaScript。
常见的JavaScript集成开发环境包括以下几种:
• Visual Studio Code:简称VS Code,由微软公司打造,完全免费使用。VS Code具备强大的代码自动补全功能,具有高度可扩展性,插件资源非常丰富;智能程度很高,不仅能自动检测并标出错误,还能自动寻找函数定义等;集成了GitHub功能(GitHub近年也被微软公司收购),使用非常方便。
• WebStorm:来自JetBrains公司,付费使用。WebStorm的内置版本管理、错误检测、代码重构等功能是其他编辑器难以超越的。
• HBuilder:来自DCloud公司,完全免费使用。HBuilder最令人兴奋的特点是其提供比其他工具更优秀的对Vue、uni-app等框架开发的支持,非常适合开发大型Vue项目等,而且它轻巧、极速、有强大的语法提示。
• Sublime:来自Sublime HQ公司,有条件限制地免费使用。Sublime最显著的特点是启动和使用时非常快速,十分轻巧,低内存消耗。严格来讲,Sublime Text是文本编辑器,不能称之为集成开发环境。
本书书写代码选择的编辑器是Visual Studio Code。下面就以Visual Studio Code为例,讲解它的安装和使用。当然,你也可以多尝试几款集成开发环境,从中选择最适合自己的一个。
Visual Studio Code是由微软公司开发的IDE工具,它是跨平台的,可以在Windows、Linux和macOS平台上运行。Visual Studio Code没有限定开发语言,几乎可以开发所有语言程序。
读者可自行到官方网站下载Visual Studio Code,官方网站会自动检测访问者的操作系统,直接单击“Download for…”按钮即可下载适配版,如图1-12所示。
图1-12 Visual Studio Code的下载页面
安装Visual Studio Code的过程非常简单,本书不再赘述。安装完成后启动软件,界面如图1-13所示。
图1-13 Visual Studio Code的界面
如果想让Visual Studio Code显示中文界面,就需要安装相关扩展。单击图1-14中的“扩展按钮”,在输入框中输入“Chinese”并按回车键,即可在扩展商店搜索相关插件。找到“Chinese(Simplified)”插件,单击“Install”按钮,即可完成插件安装。重启Visual Studio Code后,软件将显示中文界面,读者可以自行查看并熟悉相关内容。
图1-14 安装中文扩展
1.7.2 代码编写位置
本书讲解的是运行在浏览器上的JavaScript代码,其是需要嵌入HTML中执行的。JavaScript代码常见的编写位置有三种,本节将依次展开介绍。
第一种方式是在HTML中内嵌<script></script>标签对,将JavaScript代码写在标签内。代码如下:
观察这段代码,可以发现其在<body></body>对中添加了<script></script>标签对,并且将<script></script>标签对放在了其他标签的后面。
其实,<script></script>标签对放在HTML文件的任意位置都可以运行,但是我们建议将其写在其他标签的后面。因为JavaScript代码的执行会阻塞HTML标签的加载,所以建议开发人员将JavaScript代码写在其他标签的后面,其他标签加载完毕再执行JavaScript代码。JavaScript代码写在后面还有助于获取元素,这在后面学习DOM的时候会讲到,这里只做了解即可。
需要注意的是:在HTML4.01标准中,在<script>标签上应该添加type属性,其值为“text/javascript”,表示程序的类型是纯文本的JavaScript:
在HTML5标准中,<script>标签上的type属性不再要求必须书写,只需要简单书写<script></script>标签对即可。
第二种方式同样需要在HTML中内嵌<script></script>标签对,但不是把JavaScript代码写在此标签对中,而是先将其写在一个单独的js文件中,然后在标签对中通过src属性指定js文件的地址。
比如:新建一个名为“index.js”的文件,先将第一种方式<script></script>中的代码写在“index.js”文件中,然后通过<script></script>标签对的src属性引入。在HTML文件中可以这样书写:
这种写法可以实现HTML与JavaScript的分离,类似于使用CSS的<link>标签,只不过这里仍然使用<script></script>标签对。<script></script>标签对的位置与第一种方式相同,位于<body></body>中其他标签的后面。
第三种方式是使用DOM事件将JavaScript代码写在标签内。代码如下:
这里只需明白怎样将JavaScript代码放在标签内,代码的具体含义在后面的学习中会逐步明白。下面仅对代码含义进行简单讲解。
运行这段代码后,页面会出现两个按钮,如图1-15所示。
图1-15 页面效果
当单击按钮“单击按钮”时,可以触发对应的JavaScript代码执行;当将鼠标指针移入按钮“鼠标移入按钮”时,会触发对应的JavaScript代码执行。
需要注意的是:这种方式我们并不推荐使用,因为HTML与JavaScript不能进行分离,而是混在一起,代码的可读性是很差的。
1.7.3 代码注释
注释是给程序员看的提示性文字,可以增强代码可读性。在执行代码时,注释是不会被执行的。在调试程序时,也可以将部分代码进行注释,从而阻断这部分代码执行,查看其他代码的执行情况。
在JavaScript代码中可以使用双斜线“//”表示单行注释:
也可以进行多行注释,多行注释以一个斜杠和一个星号“/*”开头,以一个星号和一个斜杠“*/”结尾,如下:
为了美观,可以让注释的每行都有一个星号:
1.7.4 空格与分号
和其他许多编程语言一样,JavaScript使用分号(;)将语句分隔开,否则代码将无法正确执行。不过在JavaScript中,如果语句独占一行,则通常省略语句之间的分号(程序结尾或右大括号“}”之后的分号也可以省略)。
下面演示使用分号、省略分号,以及必须使用分号的情况,代码如下:
空格用于分隔关键字或其他代码,但是有的空格或空行在JavaScript中是无关紧要的,在执行代码的时候会被忽略。
合理地利用空格或空行进行排列,可以增强代码的清晰性与可读性。代码如下:
关键字var与变量名sum之间必须加一个空格,因为需要使用空格将它们分隔开。此行代码在运算符“=”和“+”的两边都加了一个空格,这仅仅是为了增强代码的清晰性,即使删掉空格也可以正常运行,下面的代码也是正确的:
1.7.5 程序调试
为了展示如何在浏览器中查看错误的代码信息,在下面的代码中我们故意写了一个错误:
使用Chrome浏览器运行这段代码。打开网页后,按F12键即可打开“检查”面板,其中的“Console”选项卡就是浏览器的控制台,如图1-16所示。
图1-16 “控制台”页面
观察图1-16可以发现控制台中用红色的字输出了错误信息。从错误信息可以看出,错误类型是“Uncaught ReferenceError(未捕获的引用错误)”。错误细节是“alret is not defined(alret没有被定义)”。在错误信息的最右侧还能看见发生错误的代码为第10行,据此即可寻找到代码出错的地方。