#### 注釋
---
- 根據情況可使用單行注釋`//`, 或多行區域注釋`/** **/`;
- 注釋注解是你和其他開發者相互了解代碼釋義的唯一途徑,因此,在任何會產生歧義或產生大量復雜代碼之前,以及在任何代碼塊之前都應添加注釋注解;
- 注釋為英文或中文均可,根據項目需求與情況而定;
- 注釋注解應該表意為詳細解釋、說明其承上啟下的含義與描述,在程序上下文中存在的意義,而非程序語法的中文釋義;
- 使用標準注釋符號來區別單行注釋與多行注釋;
- 如果為函數體等含有多參數代碼,請在注釋中使用@param符號來標注參數,參數個數與名稱必須與實際程序參數保持一致;
> <span class="do">正確實踐:</span>
```js
//初始化用戶數據,構造用戶數據時使用;
var users = {
name : "",
age : "",
level : 0
};
/**
* 項目全局獲取用戶數據的唯一接口,該接口只負責獲取單一用戶數去,不做用戶權限等驗證操作;
* @param userId { String } 用戶ID
* @return {Object} 用戶基礎數據
**/
function getUserName(userId){
var getUserDeferred = $q.defer();
$http({
url : "/getUserName",
method : "POST",
data : {
userUuid : userId
}
}).then(function(res){
getUserDeferred.resolve(res);
},function(error){
getUserDeferred.reject(error);
});
return getUserDeferred.promise;
}
```
> <span class="dont">錯誤實踐:</span>
```js
//聲明一個對象
var users = {
name : "",
age : "",
level : 0
};
/**
* userId get用戶ID
**/
function getUserName(userId){
var getUserDeferred = $q.defer();
$http({
url : "/getUserName",
method : "POST",
data : {
userUuid : userId
}
}).then(function(res){
getUserDeferred.resolve(res);
},function(error){
getUserDeferred.reject(error);
});
return getUserDeferred.promise;
}
```