Чи є стандарти кодування для JavaScript? [зачинено]


178

Які встановлені стандарти кодування для JavaScript?


1
Якщо це питання все ще з’являється в пошуку Google, я подумав, що додавання цього питання може бути доречним. JavaScript - це реалізація сценарію ECMAScript, що відповідає стандартам ECMA. Стандарт ECMA-262 . Для додавання з сторінки ECMA вікі :Netscape delivered JavaScript to Ecma International for standardization and the work on the specification, ECMA-262, began in November 1996
Нема

12
Закрито І захищено. Ага!?!
Роббі Ді


12
//, ЧОГОГО було закрито? Це прекрасне питання для нових програмістів Javascript. Особливо враховуючи, ах, стан найоригінальнішого коду Javascript, написаного новими програмістами.
Натан Басанес

1
Ви можете використовувати Airbnb JavaScript Guide для стилів для оновлених
Naresh Chennuri

Відповіді:


76

Не зовсім те, що ви шукаєте, але (як і види Дуга Крокфорда), я думаю, що всі, хто пише / редагує / оглядає JS, повинні переглянути слайди та відео Кріса Хайльмана на доступному JavaScript.

На слайдах , слайді 127, він говорить, що не турбуйтеся так про посібники зі стилів / стандарти коду, переформатуйте весь код, зареєстрований у VCS.

Також ці:

Поради щодо Mozilla JavaScript

Посібник зі стилю JavaScript


2
Google також має стиль керівництва: google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml
серпень

3
Намагаючись вирішити це питання (знайти і вирішити стиль JavaScript коду, при цьому допускаючи деяку гнучкість), я створив jscode.org, де ви можете генерувати власні стилі коду відповідно до деяких налаштувань (так, це може здатися кричущим реклама, але я нічого там не заробляю, я просто будував це для себе та своєї команди, і вважаю, що це корисно).
Бруно Бернардіно

Поради Mozilla JavaScript дуже рідкі, я б не включав їх.
Нечіткий аналіз

24

Ще одна причина, чому Крокфордські інструкції щодо кодування JavaScript є хорошою ідеєю:

Цей код (нижче) насправді повертається невизначеним через ін’єкцію з комою з комою JavaScript - це чортово вагомий привід отримати всю команду розробників, які співають з одного і того ж пісенного аркуша:

return // injected semicolon, therefore returns 'undefined'
{
    javascript : "fantastic"
}; // object constructs anonymously but nothing happens with it.

Трохи про це можна остерігатись вставки з комою JavaScript


2
Також є JSLint для автоматизації / перевірки деяких із цих вказівок. jslint.com
Funka

10

Я ніколи не бачив широко визнаного стандарту кодування JavaScript. Ми писали свої власні деякий час тому, і я публікував це у своєму блозі відповідно до свого роботодавця.

Майте на увазі, що деякі вказівки можуть бути трохи застарілими.


Цей документ містить посилання на "Посібники з програмування C #". Чи є він у вас загальнодоступним?
z-boss


6

Ви можете знайти декілька простих, але важливих умов кодування на Google Code Wiki .

Для дуже докладних настанов по стилю прочитати Керівництва по стилю Dojo . Він переглядає назву конвенцій, файлових конвенцій, використання змінних, макет коду, пробіли та коментарі.


4

Трохи спантеличено, що я не можу знайти відповіді Idiomatic.js та керівництво по стилю jQuery Core . Адді Османі ставить цих двох у самий верхній частині повного списку стилів кодування для JavaScript у статті "Посібники та красувачі стилів JavaScript".

Я особисто віддаю перевагу стандарту jQuery, хоча він не сильно відрізняється від Idiomatic.js. Але який би стандарт ви не вибрали, вам знадобиться валідатор, щоб перевірити, наскільки успішно ви його виконуєте. Я не міг знайти жодного для jQuery або принаймні Idiomatic, але врешті-решт придумав JS_CodeSniffer



2

Я та ще декілька інших нещодавно склали ці файли (PDF чи HTML)

Вони в основному призначені для використання з інструментарієм Ajax Control Toolkit, але реально містять всілякі корисні вказівки, незалежно від того, яку структуру ви використовуєте.

Сподіваюся, що це допомагає.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.