При вызове функции нет места между именем функции и открытием.
Нет места между именем функции и последовательности параметров; Существует пространство между всеми другими синтаксическими элементами и начальным кронштейном.
Используйте небольшую номенклатуру верблюда в качестве правила именования для всех переменных и атрибутов.
Используйте два пространства для отступления, а отдельные кавычки используются равномерно.
Ассоциативные массивы не являются кавычками, если в ключевом имени нет места или незаконных символов.
Не объединяйте операторы с разными целями в одну линию.
Не опускайте полуколон в конце предложения, даже если в одной строке есть только одно предложение.
Не используйте операторов автоинсюрекса (++) и автоинсюрец (-), используйте+= и-= вместо этого.
Не используйте оператор «Равного» (==), просто используйте оператор «Строгий равенство» (===).
Все объявления переменных размещаются в главе функции.
Все функции определены перед использованием.
Попробуйте назвать конструктор и функцию обратного вызова, чтобы вы могли увидеть более четкий стек вызовов при отладке.
Попробуйте определить все функции членов с помощью прототипов, определить атрибуты в конструкторе, а затем использовать новое ключевое слово для создания объекта для конструктора.
Избегайте сложного наследования. Если вы хотите наследовать, попробуйте использовать функцию «Унаследованные» в модуле UTIL. Например, если A наследется B, вы можете util.inherits (a, b).
Ссылки:
Приложение B (Byvoid)
Стиль программирования JavaScript (Руан Ифенг)