Рекомендуемый кодовый стандарт при разработке JS модулей.
Соглашение по именованию
0. Выделение слов - смена регистра символов (camel case), Табуляция - 3 знака, не пробелы.
1. Функции - конструкторы, работающие с оператором new именуются с большой буквы
function AbstractDriver () {
};
var Driver_1 = new AbstractDriver ();
2. Функции, и публичне функции - методы объекта с маленькой буквы
function updateRequest () {
};
function AbstractDriver () {
this.getData () {
};
};
var Driver_1 = new AbstractDriver ();
Driver_1.getData (); 3. Публичные, но временные или приватные функции - методы объекта, со знака нижнего подчеркивания и первой маленькой буквы
function AbstractDriver () {
this._getPassword () {
};
_prepare = function () {
}
_prepare (); // Приватный метод
};
var Driver_1 = new AbstractDriver ();
Driver_1._getPassword (); // Временный метод API
4. Имена свойств с маленькой буквы
var lastIndex = 0;
5. Константы - все знаки в верхнем регистре, выделение слов знаком нижнего подчеркивания
var EVENT_GENERATED_END = 0;
6. Входящие параметры функций, префикс in_, первый слог с маленькой буквы
function resizeProject (in_width, in_height) {
};
7. Выходящие параметры функций, префикс out_, первый слог с маленькой буквы
function checkConnection () {
return out_status;
};
8. Пространтсва имен, все знаки в верхнем регистре
KNX = {};
9. Расстановка пробелов:
- после ключевых слов, перед открывающимися скобками, перед фигурными скобками, после запятой
function name (in_arg1, in_arg_2) {
return out_arg;
};
10. Точка запятой: в конце строки, после закрывающей фигурной скобки
11. Документирование методов, конструкторов
/**
* Purpose of the function - назначение метода
*
* @namespace Name of the namespace - имя пространтсва
* @method / @onstructor Name of the function - имя метода или конструктора
* @param {Type} Description - входящие данные
* @return {Type} Description - выходные данные
*/
/**
* Create the data base of the app
*
* HDL
* @method createDataBase
* @param {String} Path of the file
* @return {Boolean} Success of the action
*/
function createDataBase (in_path) {
return out_result;
};Сервис поддержки клиентов работает на платформе UserEcho