ECMA-262通過叫做ECMAScript的“偽語言”為我們描述了JavaScript的所有這些基本概念
1.語法
(1).區(qū)分大小寫
ECMAScript中的(變量董栽、函數名和操作符)都區(qū)分大小寫。test和Test是兩個不同的變量塑顺,函數名不能使用typeof栗柒,因為它是關鍵字亚皂,但是typeOf則是一個有效的函數名
(2).標識符
標識符就是指變量这橙、函數煮岁、屬性的名字,或者函數的參數荒揣。標識符是按照下列格式規(guī)則組合起來的一個或者多個字符:
- 第一個字符必須是一個字母篷角、下劃線(_)或一個美元符號($)
- 其他字符可以是字母、下劃線系任、美元符號或數字
標識符中的字母也可以包含擴展的ASCII或Unicode字母字符
ECMAScript標識符采用駝峰大小寫格式恳蹲,也就是第一個字母小寫虐块,剩下的每個單詞的首字母大寫,例如:doSomethingImportant
不能把關鍵字嘉蕾、保留字贺奠、true、false和null用作標識符
(3).注釋
ECMAScript使用C風格的注釋错忱,包括單行注釋和塊級注釋儡率。
// 單行注釋
/*
*這是一個多行
*(塊級)注釋
*/
(4).語句
每條語句結束最好加個分號(;),判斷語句以清,循環(huán)語句中的代碼最好寫入一個代碼塊中({})儿普。
2.關鍵字和保留字
ECMAScript的全部關鍵字
關 鍵 字 啊 break do instanceof typeof case else new var catch finally return void continue for switch while debugger function this while default if throw with default if throw delete in try
ECMA-262第3版定義的全部保留字
保 留 字 啊 abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public
在第5版中新增了let和yield這兩個保留字
3.變量
定義變量時要使用var操作符
var message;
局部變量
function test(){
var message = "hi"; //局部變量
}
test();
alert(message); //錯誤!
全局變量
function test(){
message = "hi"; //全局變量
}
test();
alert(message); //"hi"
雖然省略var操作符可以定義全局變量掷倔,但這也不是我們推薦的做法眉孩,因為在局部作用域中定義的全局變量很難以維護,而且如果有意地忽略了var操作符勒葱,也會由于相應變量不會馬上就有定義而導致不必要地混亂浪汪。給未經聲明地變量賦值在嚴格模式下會導致拋出ReferenceError錯誤。
可以使用一條語句定義多個變量凛虽,例如:
var message = "hi",
found = false,
age = 29;