JavaScript是一種專為與網(wǎng)頁交互而設計的腳本語言,由下列三個不同的部分組成:
1.ECMAScript,提供核心語言功能;
2.文檔對象模型(DOM),提供訪問和操作網(wǎng)頁內容的方法和接口;
3.瀏覽器對象模型(BOM),提供與瀏覽器交互的方法和接口。
JavaScript的這三個組成部分,在當前五個主要瀏覽器(IE、Firefox、Chrome、Safari和Opera)中都得到了不同程度的支持。
Javascript程序采用的是Unicode(兩個字節(jié)表示一個字符)字符集編寫的。
Javascript是區(qū)分大小寫的語言。HTML是不區(qū)分大小寫,由于兩者聯(lián)系緊密,注意區(qū)分。
Javascript會忽略程序標識符之間的空格,多數(shù)情況下,也會忽略換行符。
Javascript支持兩種格式的注釋。
單行注釋://注釋內容
多行注釋:/*注釋內容注釋內容*/
兩個多行注釋不能嵌套。
所謂直接量,就是程序中直接使用的數(shù)據(jù)值。
1.2 //數(shù)字
'adsa' //字符串
true //布爾值
/javascrpt/gi //正則表達式直接量、
null //空
{x:1,y=2} //對象
[1,2,3,4] //數(shù)組
標識符就是一個名字,用來對變量或者函數(shù)命名。
javascript中的標識符必須以字母、下劃線或$開始,后續(xù)的字符可以是字母、數(shù)字、下?lián)Q線或者美元符,數(shù)字不能作為標識符的首字母出現(xiàn)的。
Javascript把一些標識符拿出來用作自己的關鍵字,因此,在程序中不能再把這些關鍵字用作標識符了。
已經使用的關鍵字有:
注意:如果把關鍵字用作變量名或函數(shù)名,可能得到諸如 "Identifier Expected"(應該有標識符、期望標識符)這樣的錯誤消息。
沒有使用但不推薦使用的保留字:
注意:如果將保留字用作變量名或函數(shù)名,那么除非將來的瀏覽器實現(xiàn)了該保留字,否則很可能收不到任何錯誤消息。當瀏覽器將其實現(xiàn)后,該單詞將被看做關鍵字,如此將出現(xiàn)關鍵字錯誤。
javascript的具體實現(xiàn)可能定義獨有的全局變量和函數(shù),每一種特定的javascrip運行環(huán)境(客戶端、服務器端)都有自己的一個全局屬性、函數(shù)列表。Javascript預定義了很多全局變量和函數(shù),應避免把他們的名字用作變量名和函數(shù)名。
全局函數(shù)
全局變量:
在允許通過 LiveConnect 或相關的技術來腳本化 Java 的 JavaScript 實現(xiàn)中,全局對象被賦予了這里列出的 java 和 Package 屬性以及 getClass() 方法
Javascrip使用分號將語句分隔開;如果語句獨占一行,通??梢允÷哉Z句之間的分號。
a=3;b=4;
等價于
a=3
b=4
javascript并不是在所有的換行處都填補分號(所以說大部分時候換行符可以忽略),只有在缺少了分號就無法正確解析代碼的時候,javascript才會填補分號。
var a
a
=
3
console.log(a)
將解析為 var a;a=3;console.log(a);因為不添加分號代碼無法解析。
而
var y=x+f
?。╝+b).toString()
將被解析成var y=x+f(a+b).toString();
如果當前語句和下一行語句無法合并解析,javascript則在第一行后填補分號;這是通用規(guī)則,但是有兩個意外
1、return、break和continue之后緊跟換行,javascript會在換行處填補分號;
return
true;
會被解析成 return; true;
2、++ 和--運算符
如果作為后綴表達式,他和表達式應該在一行,否則行尾將填補分號;同時,++將和下一行一起解析
x
++
y
將解析成x;++y;