熟悉 java、C 和 Perl 这些语言的开发者会发现 ecmascript 的语法很容易掌握,因为它借用了这些语言的语法。
java 和 ecmascript 有一些关键的语法特性相同,也有一些完全不同。
区分大小写
与 java 一样,变量、函数名、运算符以及其他一切东西都是区分大小写的。
变量 test 与变量 TEST 是不同的。
变量是弱类型的
与 java 和 C 不同,ecmascript 中的变量无特定的类型,定义变量时只用 var 运算符,可以将它初始化为任意值。
因此,可以随时改变变量所存数据的类型(尽量避免这样做)。
var color = "red";
var num = 25;
var visible = true;
每行结尾的分号可有可无
java、C 和 Perl 都要求每行代码以分号(;)结束才符合语法。
ecmascript 则允许开发者自行决定是否以分号结束一行代码。如果没有分号,ecmascript 就把折行代码的结尾看做该语句的结尾(与 Visual Basic 和 VBScript 相似),前提是这样没有破坏代码的语义。
最好的代码编写习惯是总加入分号,因为没有分号,有些浏览器就不能正确运行,不过根据 ecmascript 标准,下面两行代码都是正确的:
var test1 = "red"
var test2 = "blue";
注释与 java、C 和 PHP 语言的注释相同
ecmascript 借用了这些语言的注释语法。
有两种类型的注释:
单行注释以双斜杠开头(//)
多行注释以单斜杠和星号开头(/),以星号和单斜杠结尾(/)
//this is a single-line comment
/this is a multi-
line comment/
括号表示代码块
从 java 中借鉴的另一个概念是代码块。
代码块表示一系列应该按顺序执行的语句,这些语句被封装在左括号({)和右括号(})之间。
if (test1 == "red") {
test1 = "blue";
alert(test1);
}