标识符就是一个名字。在javascript中,标识符用来对变量和函数进行命名,或者用做javascript代码中某些循环语句中的跳转位置的标记。javascript标识符必须以字母。下划线、或者美元符号开始。后续的字符可以是字母。数字。下划线或者美元符号(数字是不许作为首字母出现的,一遍javascript可以轻易区分开标识符和数字)、下面是合法的标识符
复制代码 代码如下:
my_variable_name
b13
_dummy
$str
处于可移植性和易于书写的考虑,通常我们只使用只使用ASCII字母和数字来书写标识符。然后需要注意的是,javascript允许标识符中出现Unicode字符全集中的字母和数字(从技术来将ECMAScript允许在标识符的首字符后面出现Unicode字符机制的Mn类,Mc类和P才类)、因此,程序员可以使用非英语的语言或者数学符号来书写标识符
复制代码 代码如下:
var sá = true;
var π = 3.14;
javascript把一些标识符拿出来自己用做关键字,因此名就不能再在程序中把这些关键字用做标示符了。
复制代码 代码如下:
break
case
catch
continue
default
delete
do
else
finally
for
function
if
in
instanceof
new
return
switch
this
throw
try
typeof
var
void
while
with
javascript保留字
class const enum export
export extends import super
另外,这些关键字在普通的javascript中是合法的,但在严格模式下是保留字
implements let private public yield interface package
protected static
同样严格模式下对下面的标识符做了严格的限制,但不能做变量名、参数名和函数名。
arguments eval
javascript的具体实现可能定义独有的全局变量和函数,每一种特定的javascript运行环境(客户端)服务器等都有自己的一个全局属性列表,这一点是需要牢记的。(window对象来了解客户端javascript中定义全局变量和函数列表)
5.可选的分号
和很多编程语言一样,javascript使用分号(;)将语句分隔开。这对增强代码的可读性和整洁性是非常重要的,缺少分隔符一条语句结束就成了下一条语句的开始,反之亦然。
在javascript中,各自语句独占一行,通常可以省略语句之间的分号(程序结尾处使用“}”花括弧之前的分号也可以省略)。很多javascript程序员(包括本书的代码示例)都是使用分号来明确标记语句的结束,即使在并不完全需要分号的时候也是如此,另一种风格是在任何可以省略分号时都将其省略,只有在不得不使用的时候才使用分号,不管哪种编程风格,关于javascript有几个细节需要注意。
如下代码,第一个分号是可以省略的
a=3;
b=4;
但如果按照如下格式书写,第一个分号则不能省略。
a=3;b=4;
需要注意的是,javascript并不是在所有的换行处都填补分号:只有在缺少了分号就无法正常解析代码的时候,javascript才会填补分号,换句话说(类似下面代码中的两处异常),如果当前的语句和随后的的非空格字符不能当成一个整体解析的话,javascript就在当前语句的结束处来填补分号,看下如下代码
var a
a
=
3
console.log(a)
javascript将其解析为
var a;a=3;console.log(a);
javascript给第一行处添加了分号,如果没有分号,javascript就无法解析代码中的var a a。第二个a可以单独当做一条语句“a;”,但javascript没有给第二行结尾处填补分号。因为它可以和第三行内容一起解析成"a=3;" .
有些语句的分隔规则会导致一些想不到的情形,这顿断码分成了两行,看起来是两条独立的语句。