Каковы лучшие методы программирования для написания кода на JavaScript? Возможно, на этот вопрос сложно ответить. Итак, изменим вопрос: какие стандарты кодирования наиболее популярны?
Sideeffect.kr получил несколько интересных результатов, проанализировав открытый исходный код, размещенный на GitHub. Давайте посмотрим.
Конечная запятая и начальная запятая
Конечные цитаты:
Скопируйте код кода следующим образом:
вар фу = 1,
бар = 2,
баз = 3;
вар объект = {
фу: 1,
бар: 2,
баз: 3
};
Начальная цитата:
Скопируйте код кода следующим образом:
вар фу = 1
, бар = 2
, баз = 3;
вар объект = {
фу: 1
, бар: 2
, баз: 3
};
Конец строки – 92,345%; начало строки – 7,655%. (На основе 1 100 251 фиксации.)
Пробел и табуляция
В наши дни все любят использовать пространство. Использование отступов пробелов может гарантировать, что разные разработчики и разные настройки редактора будут видеть одинаковые результаты.
Пространство — 81,1%; Таб — 18,9%. (На основе 2 019 550 заявок.)
Добавлять ли пробел после функции
нет пробелов
Скопируйте код кода следующим образом:
функция Фу() {
вернуть «бар»;
}
Есть места
Скопируйте код кода следующим образом:
функция foo () {
вернуть «бар»;
}
Без пробелов – 67,424%, с пробелами – 32,576%. (На основе 1 212 488 заявок.)
Есть ли пробелы между параметрами и круглыми скобками?
нет пробелов
Скопируйте код кода следующим образом:
функция fn(arg1, arg2) {
//или
если (истина) {
Есть места
Скопируйте код кода следующим образом:
функция fn(arg1, arg2) {
// ...
}
если (истина) {
// ...
}
Без пробелов – 94,31%, с пробелами – 5,69%. (На основе 1 514 971 материалов.)
Есть ли пробелы вокруг двоеточия в литерале объекта?
После двоеточия стоит пробел
Скопируйте код кода следующим образом:
{
фу: 1,
бар: 2,
баз: 3
}
Нет пробела после двоеточия
Скопируйте код кода следующим образом:
{
фу:1,
бар:2,
баз:3
}
До и после двоеточия есть пробелы
Скопируйте код кода следующим образом:
{
фу: 1,
бар: 2,
Баз : 3
}
Конечный пробел — 62,955%; пробел — 22,891%, 14,154%; (На основе 1 300 035 заявок.)
Лично я считаю, что никакие места не являются слишком перегруженными и не способствуют быстрому различению ключа и значения. Если есть пробелы до и после, боюсь, нужно выравнивать двоеточия, чтобы красиво выглядело. Судя по статистике, большинство программистов ленятся выравнивать двоеточия (или у большинства программистов IDE или редакторы не умные). достаточно?)
условное утверждение
Есть места
Скопируйте код кода следующим образом:
если (истина) {
//...
}
в то время как (истина) {
//...
}
переключатель (v) {
//...
}
нет пробелов
Скопируйте код кода следующим образом:
если (истина) {
//...
}
в то время как (истина) {
//...
}
переключатель (v) {
//...
}
С пробелами — 78,276%, без пробелов — 21,724%. (На основе 1 163 316 заявок.)
Одинарные кавычки, двойные кавычки
Одинарные кавычки — 56,791%, двойные — 43,209%. (На основе 1 705 910 заявок.)
Подвести итог
Поэтому наиболее популярными стандартами кодирования являются:
• Запятая в конце строки.
• Отступ пространства
• Нет пробела после имени функции.
• Никаких пробелов между параметрами функции и круглыми скобками.
• В литералах объектов добавляйте пробел после двоеточия, но не перед двоеточием.
• Добавьте пробел после ключевого слова условного оператора.
То, что популярно, не обязательно хорошо (например, грипп), но с точки зрения коммуникации написание кода в популярном стиле может сделать ваш код более знакомым большинству людей.