1. 程式人生 > >JavaScript語法規範

JavaScript語法規範

參考書籍:《JavaScript 權威指南----ECMAScript5+HTML5DOM+HTML5BOM》編著:張亞飛
JavaScript編寫語法遵循ECMAScript標準,以下是ECMAScript語言的一些基本規範。

1.識別符號的命名規範

ECMAScript識別符號遵循以下標準命名規則: a. 第一字元必須是為字母、下劃線( _ )或者美元符號( $ )。 b. 其他字元可以是字母、下劃線、美元符號或數字,最好不要包含其他字元。 c. 不能把關鍵字或者保留字作為識別符號。 例如下面的程式碼都是錯誤的:
var 5count=0; 			//首字元不能使用數字
var yes/no=false;		//包含非法字元“/”
var undefined="undefined";	//undefined是內建常量關鍵字

2.程式註釋

(1)單行註釋和尾隨註釋 使用雙斜線“//”可以定義單行註釋或尾隨註釋。 例如下面的程式碼:
var oDate=new Date(); 	// 建立新的日期物件
// 檢查今天是否是星期日
if(day=="sun"){
}

(2)多行註釋 多行註釋又被稱為塊註釋,可以使用“/*”和“*/”進行定義,位於註釋開始標籤“/*”和註釋結束標籤“*/”之間的任何字元都將被解釋為註釋並忽略。 例如下面的程式碼:
/* 本例採用多行的註釋方式
*/

(3)文件註釋 文件註釋以“/**”開始,以“*/”結束,且每行都以一個星號“*”開頭。 例如下面的程式碼:
/**
  * 該類為文件註釋示例類
  * @author pengjunlee
  * @versioin 1.0.0.1
  * @since js 1.5
  */	 
  function HelloWorld(){}

(4)HTML註釋 HTML註釋以“<!--”開始,以“-->”結束,例如下面的程式碼:
<!--這裡是HTML註釋-->

3.常用識別符號命名方法

(1)​駝峰命名法(Camel Notation) 第一個單詞首字母小寫,其餘所有單詞首字母大寫。變數、函式、方法、屬性等基本都採用這種命名方法,例如下面的定義:
function displayUserInfo(){};
var userName;

(2)​帕斯卡名法(Pascal Notation) 所有單詞首字母大寫。經常被用在類、介面的宣告中,例如,HelloWorld就可以作為一個類名,而介面名經常在前面加一個大寫字母 I,例如 IHelloWorld。
(3)匈牙利命名法(Hungarian Notation) 在識別符號前面增加小寫字母做字首,多用於C、C++的識別符號命名。其基本規則是: 識別符號名稱=特性字首+功能描述 例如變數m_wndStatusBar,字首 m_ 表示類的成員,wnd 也是字首,表示的是變數物件特性,這裡 wnd 的意義是視窗,所以 m_wnd 表示視窗類的成員,而 StatusBar 則是變數的功能描述。 以下是JavaScript常用到的匈牙利命名法字首:
型別 字首 型別 例項
陣列 a Array aItems
布林值 b Boolean bIsComplete
浮點數 f Float fPrice
整數 i Integer iItemCount
物件 o Object oDiv1
正則表示式 reg RegExp reEmailCheck
字串 s String sUserName
變體變數 v Variant vAnything
函式 fn Function fnHandler

4.ECMAScript5嚴格模式

嚴格模式(Strict Mode)是ECMAScript5新增的功能,使用嚴格模式可以捕捉到一些常見的程式碼錯誤,丟擲異常。當一些相對來說不安全的操作執行時,使用嚴格模式可以阻止或者丟擲異常。 要在全域性範圍內使用嚴格模式,只需在程式第一行定義下面的一行程式碼:
"use strict";


要在函式內使用嚴格模式,只需在函式體內第一行定義下面的一行程式碼:
function fnInStrictMode(){
      "use strict";
      //... 其他程式碼 ...
}

以為嚴格模式僅僅是使用一行文字字串宣告來實現,所以對於舊的不支援嚴格模式的瀏覽器來說不存在相容性問題,因此可以放心大膽地使用。