|
2.1 ECMAScript基础 |
在第1章中,我们了解到JavaScript语言与Java语言的历史渊源,其实JavaScript起初就是模仿Java而开发出来的。如果读者熟悉Java语言,就会发现ECMAScript语法很容易掌握,因其主要就是借用了Java语言的语法。当然,JavaScript与Java毕竟是两种功能作用不同的编程语言,ECMAScript还有一些特殊的语法特性。
相信读者在学习人生中的第一门编程语言(比如C语言、Java语言等)时,最先要明确的就是程序语句。学校为什么会将诸如C或Java这类的语言作为基础性编程语言呢?其中有一条原因是非常重要的,这类语言对于语法语句都有严格的规定,这样便于初学者对编程语言的语法语句有深刻的理解。
那么JavaScript脚本语言的语句规则是如何定义的呢?通常,一条JavaScript语句用于描述一个完整的变量定义或功能操作,且每一条JavaScript语句都要以分号(;)来结束,分号(;)用来分割各条JavaScript语句。
使用分号(;)分割JavaScript语句的一个好处就是可以在一行中编写多条JavaScript语句,这一点与某些编程语言是有明显区别的。
不过,如果读者在阅读其他JavaScript源码发现有不带分号(;)的JavaScript语句时,也不必大惊小怪。这是因为在ECMA-262规范中,规定了可以不必使用分号(;)来结束JavaScript语句。如果没有使用分号(;)来结束,ECMAScript语法就会将每行代码结尾处的换行作为JavaScript语句的结束,不过前提是没有破坏JavaScript语句的完整功能。因此,绝大多数的程序员还是会老老实实地写上分号(;)作为JavaScript语句的结束,这样既便于自己管理代码,也便于给别人阅读。
ECMAScript语法规定对字母大小写是敏感的,也就是区分大小写的,这点是与Java语法一致的。ECMAScript语法区分大小写的规定适用于变量、函数名、运算符及其他一切代码。比如变量id与Id是不同的;同样,函数getElementById()与getElementbyID()也是不同的,而且getElementbyID()是无效函数。
ECMAScript语法规定可以在文本字符串中使用反斜杠(\)对代码行进行换行。例如,下面的代码是可以正确解析的。
document.write("Hello \ EcmaScript!");
不过需要注意的是,代码换行限于文本字符串中。如果将上面的代码改写成下面的形式,代码是无法正确解析的。
document.write \ ("Hello EcmaScript!");
ECMAScript语法规定会忽略多余的空格。因此,依据这个特点可以通过添加空格对代码进行排版,从而提高代码的可读性。
ECMAScript(JavaScript)代码注释分为单行注释和多行注释,被注释的JavaScript代码是不会被执行的。具体说明如下:
1. ECMAScript代码单行注释
单行注释以“//”开头,例如:
document.write("Hello EcmaScript!"); // 向浏览器输出字符串"Hello EcmaScript!"
2. ECMAScript代码多行注释
多行注释以“/*”开头、并以“*/”结束,例如:
/* * 向浏览器输出字符串"Hello EcmaScript!" */ document.write("Hello EcmaScript!");