標(biāo)識(shí)符
標(biāo)識(shí)符(identifier)是用來(lái)識(shí)別具體對(duì)象的一個(gè)名稱肥橙。最常見(jiàn)的標(biāo)識(shí)符就是變量名魄宏,以及后面要提到的函數(shù)名。JavaScript語(yǔ)言的標(biāo)識(shí)符對(duì)大小寫(xiě)敏感存筏,所以a和A是兩個(gè)不同的標(biāo)識(shí)符宠互。
標(biāo)識(shí)符有一套命名規(guī)則味榛,不符合規(guī)則的就是非法標(biāo)識(shí)符。JavaScript引擎遇到非法標(biāo)識(shí)符予跌,就會(huì)報(bào)錯(cuò)搏色。
簡(jiǎn)單說(shuō),標(biāo)識(shí)符命名規(guī)則如下:
第一個(gè)字符券册,可以是任意Unicode字母(包括英文字母和其他語(yǔ)言的字母)频轿,以及美元符號(hào)($)和下劃線(_)。
第二個(gè)字符及后面的字符烁焙,除了Unicode字母航邢、美元符號(hào)和下劃線,還可以用數(shù)字0-9骄蝇。
下面這些都是合法的標(biāo)識(shí)符膳殷。
arg0
_tmp
$elem
π
下面這些則是不合法的標(biāo)識(shí)符。
1a // 第一個(gè)字符不能是數(shù)字
23 // 同上
*** // 標(biāo)識(shí)符不能包含星號(hào)
a+b // 標(biāo)識(shí)符不能包含加號(hào)
-d // 標(biāo)識(shí)符不能包含減號(hào)或連詞線
中文是合法的標(biāo)識(shí)符九火,可以用作變量名赚窃。
var 臨時(shí)變量 = 1;
JavaScript有一些保留字,不能用作標(biāo)識(shí)符:arguments岔激、break勒极、case、catch鹦倚、class河质、const冀惭、continue震叙、debugger、default散休、delete媒楼、do、else戚丸、enum划址、eval、export限府、extends夺颤、false、finally胁勺、for世澜、function、if署穗、implements寥裂、import嵌洼、in、instanceof封恰、interface麻养、let、new诺舔、null鳖昌、package、private低飒、protected遗遵、public、return逸嘀、static车要、super、switch崭倘、this翼岁、throw、true司光、try琅坡、typeof、var残家、void榆俺、while、with坞淮、yield茴晋。
另外,還有三個(gè)詞雖然不是保留字回窘,但是因?yàn)榫哂刑貏e含義诺擅,也不應(yīng)該用作標(biāo)識(shí)符:Infinity、NaN啡直、undefined烁涌。