1.標識符與關鍵字
標識符以字母開頭,可以包含字母、數字、下劃線。標識符不能使用以下保留字符:
復制代碼 代碼如下:
abstract, boolean, break,byte,case,catch,char,class,const,debugger,default,delete,do,double,else,enum,export,extends,false,final,finally,float,for,function,goto,if,implements,import,in,instanceof,int,interface,long,native,new,null,package,private,protected,public,return,short,static,super,switch,synchronized,this,throw,throws,transient,true,try,typeof,var,volatile,void,while,with
此外,undefined,NaN,Infinity在javascript中有特定的意義,所以也不要使用。javascript不允許使用保留字來命名變量或參數。而且javascript還不允許在對象字面量中,或者在一個屬性存取表達式的點號之後,使用保留字走位對象的屬性名。
2.數字
javascript只有一個單一的數字類型,它的內部被表示為64位浮點數,和java的double一樣。
值NaN是一個數值,它表示一個不能產生正常結果的運算結果,NaN不等於任何值,包括它自己,你可以用函數 isNaN(number) 檢測NaN。
值Infinity表示所有大於 1.7976931348623157E+308 的值,即無窮大值。
3.字符串
字符串是不可變的。每次字符串改變都要創建一個新的字符串對象。
字符串中包含的是Unicode 16位字符。javascript中沒有字符類型。
字符串有一個length屬性,可以獲得字符串的長度。
4.語句
var語句在函數內部定義一個變量時,定義的變量是函數的私有變量。var語句在函數外或者在函數內不用var定義的變量(直接使用,如:function(){m=3;})都是全局變量。
javascript中的代碼塊不會創建一個新的作用域,因此變量應該定義在函數的頂端,而不是在代碼塊中。
for … in …語句可以枚舉一個對象的所有屬性名。通常你必須通過檢測 object.hasOwnProperty(varible) 來確定這個屬性名是該對象的成員,還是從其原型鏈裡找到的。
for(var pro in Object){ if (Object.hasOwnProperty(pro)) { ... };}
5.以下值被當做假(false):false,null,undefined,空字符串 “ ”,數字0,數字NaN 。