1. 表達式語句:具備反作用的表達式 express
- 賦值語句:greeting = "hello" + name;
- 函數調用:alert(greeting);
2. 複合語句和空語句:能夠用逗號運算符將幾個表達式鏈接在一塊兒,造成一個表達式,一樣的,能夠用花括號將多條語句括起來造成一條複合語句;JavaScript中沒有塊級做用域,在語句塊中申明的變量並非語句塊私有的 函數
3. 聲明語句:var和function都是聲明語句,分別聲明變量和函數; spa
- 函數聲明語句一般出如今JavaScript代碼的最頂層,也能夠嵌套在其餘函數體內,嵌套時,函數聲明只能出如今所嵌套的頂部,也就是說不能出如今if語句、while循環或其餘任何語句中(在一些實現中,容許在出現語句的地方均可以進行函數聲明,可是不一樣的實如今細節處理方式上有很大區別,所以不具有可移植性)
4. 條件語句 對象
- if/else語句
- switch語句:case的匹配操做,其實是「===」恆等運算符比較;default標籤能夠放置在switch語句內的任何地方
5. 循環 ip
- while
- do/while
- for
- for/in:在執行for/in語句的過程當中,JavaScript解析器先計算object表達式,如表達式爲null或undefined,JavaScript解釋器將會跳過循環並執行後續的代碼,若是表達仍是等於一個原始值,這個原始值會轉換爲預知對應的包裝對象;JavaScript會一次枚舉對象的屬性來執行循環,每次循環前都會先計算variable表達式的值,並將屬性名(字符串類型)賦值給它
6. 跳轉 作用域
- 標籤語句
- break語句:只能出如今循環和switch語句中;能夠跟隨一個語句標籤,break關鍵字和labelname之間不能換行;控制權不能越過函數的邊界
- continue語句:和break語句相似,但它不是退出循環,而是轉而執行下一次循環
- return語句
- throw語句:expression的值能夠是任意類型,JavaScript解釋器拋出的異常一般採用Error類型或其子類型;會向上傳遞異常,知道被catch到或當成程序錯誤處理
- try/catch/finally語句:①只要try被執行到,finally語句也會被執行到 ②若是finally從句拋出異常,這個異常將會替代正在拋出的異常 ③若是finally從句運行到return、continue、break語句,異常會被忽略,方法依然會正常返回