任何一門語言,都有著自己的語法,JavaScript 也不例外,JavaScript 當中大量借鑒了C及其它C語言的語法,但比這些都要寬松。JavaScript中是嚴格**區分大小寫**的,變量名、函數名、標識符等等,都是區分大小寫的。
## 標識符
*****
所謂標識符,就是指變量、函數、屬性的名字或者函數中的參數,這些命名必須遵循以下規定:
* 必須以字母、下劃線或 $ 符開頭
* 其余部分可以為 字母、數字、下劃線或 $ 符號
* 雖然除開頭以外的部分,可以用ASCII或 Unicode字母字符命名,但不推薦這么做
* 盡量以駝峰方式命名,命名盡量要做到有意義,要做到一目了然
* 不能使用保留字、關鍵字等為關鍵字命名
## 注釋
*****
在 JavaScript 中的注釋分為兩種,單行注釋和多行注釋
* 單行注釋使用的是雙斜線(//)
~~~
// 這是單行注釋
~~~
* 多行注釋,使用斜線和星號(/\*)開頭,又以星號和斜線(\*/)結尾
~~~
/*
這里是多行注釋
*/
~~~
## 嚴格模式
*****
這種模式使得Javascript在更嚴格的條件下運行。設立"嚴格模式"的目的,主要有以下幾個:
* 消除Javascript語法的一些不合理、不嚴謹之處,減少一些怪異行為;
* 消除代碼運行的一些不安全之處,保證代碼運行的安全;
* 提高編譯器效率,增加運行速度;
* 為未來新版本的Javascript做好鋪墊。
同樣的代碼,嚴格模式和非嚴格模式下面,運行的結果可能會不一樣。使用方法為在開頭加上 `"use strict"` ,如:
~~~
<script type="text/javascript">
"use strict";
// JavaScript 代碼
</script>
~~~
如果需要在某個函數中使用嚴格模式,也可以在函數內部的開頭加上 `"use strict"`,如:
~~~
function fn(){
"use strict";
//函數體內容
}
~~~
## 語句
****
在JavaScript 語句的結尾,盡量使用英文半角分號(;)結束,雖然不使用分號結束大部分代碼也可以正常執行,但非常不推薦這樣做,因為程序解析時,還得花時間去看實際這句話是從哪里結束的,會浪費一定的性能。
~~~
var name = "張三" //可以正常執行,但不推薦
var age = 20; //也可以正常執行
~~~
在流程控制或條件判斷的語句中,盡量使用左花括號({)開始,右花括號(})結束,雖然條件控制語句后面執行一句代碼時,可以不使用花括號,但不推薦這樣做,加上后代碼可讀性更高,并且可以避免很多錯誤。
~~~
if (var) alert(var); //可以正常執行,但不推薦
if (var) {
alert(var); //推薦做法,加上花括號
}
~~~