JS中ECMAScript基础

1 :区分大小写

        与 Java 一样,变量、函数名、运算符以及其他一切东西都是区分大小写的。

比如:

变量 test 与变量 TEST 是不同的。

2:变量是弱类型的

        与 Java 和 C 不同,ECMAScript 中的变量无特定的类型,定义变量时只用 var 运算符,可以将它初始化为任意值。

因此,可以随时改变变量所存数据的类型(尽量避免这样做)。

例子

var color = "red";

var num = 25;

var visible = true;

3:每行结尾的分号可有可无

        Java、C 和 Perl 都要求每行代码以分号(;)结束才符合语法。

ECMAScript 则允许开发者自行决定是否以分号结束一行代码。如果没有分号,ECMAScript 就把折行代码的结尾看做该语句的结尾(与 Visual Basic 和 VBScript 相似),前提是这样没有破坏代码的语义。

最好的代码编写习惯是总加入分号,因为没有分号,有些浏览器就不能正确运行,不过根据 ECMAScript 标准,下面两行代码都是正确的:

var test1 = "red"

var test2 = "blue";

4:注释与 Java、C 和 PHP 语言的注释相同

        ECMAScript 借用了这些语言的注释语法。

有两种类型的注释:

单行注释以双斜杠开头(//)

多行注释以单斜杠和星号开头(/*),以星号和单斜杠结尾(*/)

//this is a single-line comment

/*this is a multi-

line comment*/

5:变量注意事项

        与 Java 不同,ECMAScript 中的变量并不一定要初始化(它们是在幕后初始化的,将在后面讨论这一点)。因此,下面这一行代码也是有效的:

var test;

此外,与 Java 不同的还有变量可以存放不同类型的值。这是弱类型变量的优势。例如,可以把变量初始化为字符串类型的值,之后把它设置为数字值,如下所示:

var test = "hi";

alert(test);

test = 55;

alert(test);

这段代码将毫无问题地输出字符串值和数字值。但是,如前所述,使用变量时,好的编码习惯是始终存放相同类型的值。

变量声明不是必须的

ECMAScript 另一个有趣的方面(也是与大多数程序设计语言的主要区别),是在使用变量之前不必声明。例如:

var sTest = "hello ";

sTest2 = sTest + "world";

alert(sTest2);

在上面的代码中,首先,sTest 被声明为字符串类型的值 "hello"。接下来的一行,用变量 sTest2 把 sTest 与字符串 "world" 连在一起。变量 sTest2 并没有用 var 运算符定义,这里只是插入了它,就像已经声明过它一样。

ECMAScript 的解释程序遇到未声明过的标识符时,用该变量名创建一个全局变量,并将其初始化为指定的值。

这是该语言的便利之处,不过如果不能紧密跟踪变量,这样做也很危险。最好的习惯是像使用其他程序设计语言一样,总是声明所有变量。

你可能感兴趣的:(JS中ECMAScript基础)