Czy są jakieś standardy kodowania dla JavaScript? [Zamknięte]


178

Jakie są ustalone standardy kodowania dla JavaScript?


1
Widząc to pytanie nadal pojawia się w wyszukiwarce Google, pomyślałem, że dodanie tego może być istotne. JavaScript to implementacja skryptu ECMAScript, zgodna ze standardami ECMA. Standardowy ECMA-262 . Aby dodać ze strony wiki ECMA :Netscape delivered JavaScript to Ecma International for standardization and the work on the specification, ECMA-262, began in November 1996
Nie,

12
Zamknięty ORAZ chroniony. Hę!?!
Robbie Dee


12
// WHHHHYYYY było zamknięte? To doskonałe pytanie dla nowych programistów Javascript. Zwłaszcza biorąc pod uwagę stan, ah, najbardziej oryginalnego kodu JavaScript napisanego przez nowych programistów.
Nathan Basanese

1
Możesz użyć Airbnb JavaScript Style Guide do aktualnych standardów kodowania github.com/airbnb/javascript
Naresh Chennuri

Odpowiedzi:


76

Nie do końca to, czego szukasz, ale (podobnie jak filmy Douga Crockforda) Myślę, że każdy, kto pisze / edytuje / recenzuje JS, powinien patrzeć na slajdy i filmy Chrisa Heilmanna na łatwym do utrzymania javascript.

W slajdach , slajd 127, mówi, że nie przejmuj się tak bardzo stylami / standardami kodu, sformatuj cały kod w VCS.

Także te:

Porady Mozilla JavaScript

Przewodnik po stylu JavaScript



3
Próbując rozwiązać to pytanie (znajdując i decydując się na styl kodu JavaScript, jednocześnie pozwalając na pewną elastyczność), stworzyłem jscode.org, w którym możesz generować niestandardowe style kodu zgodnie z niektórymi ustawieniami (tak, może to brzmieć rażąco reklamy, ale nic tam nie zyskuję, właśnie zbudowałem to dla siebie i mojego zespołu i uważam, że ma to dobrą wartość).
Bruno Bernardino

Porady Mozilla JavaScript są bardzo rzadkie, nie dołączam tego.
Analiza rozmyta

24

Kolejny powód, dla którego wytyczne kodowania JavaScript Crockforda są dobrym pomysłem:

Ten kod (poniżej) faktycznie zwraca niezdefiniowany z powodu iniekcji średnika JavaScript - co jest cholernie dobrym powodem, aby cały zespół programistów śpiewał z tego samego arkusza:

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

Nieco więcej na ten temat w Uwaga na wstawianie średników JavaScript


2
Istnieje również JSLint, który pomaga zautomatyzować / zweryfikować niektóre z tych wytycznych. jslint.com
Funka,

10

Nigdy nie widziałem powszechnie uznanego standardu kodowania JavaScript. Jakiś czas temu napisaliśmy własny i opublikowałem go na swoim blogu zgodnie z moim pracodawcą.

Pamiętaj, że niektóre wytyczne mogą być nieco nieaktualne.


Ten dokument zawiera odniesienia do „Wytycznych programistycznych w języku C #”. Czy masz to również publicznie dostępne?
z-boss,


6

Niektóre proste, ale niezbędne konwencje kodowania można znaleźć na Wiki Google Code .

Aby uzyskać bardzo szczegółowe przewodniki po stylach, przeczytaj Przewodnik po stylach Dojo . Omawia konwencje nazewnictwa, konwencje plików, zmienne użycie, układ kodu, białe znaki i komentarze.


4

Trochę zdziwiony, że nie mogę znaleźć w odpowiedziach Idiomatic.js i jQuery Core Style Guide . Addy Osmani umieścił je na szczycie pełnej listy stylów kodowania JavaScript w swoim artykule „Przewodniki po stylach JavaScript i elementy upiększające”.

Ja osobiście wolę standard jQuery, choć niewiele różni się od Idiomatic.js. Ale niezależnie od wybranego standardu będziesz potrzebował walidatora, aby sprawdzić, jak skutecznie go przestrzegasz. Nie mogłem znaleźć żadnego dla jQuery ani przynajmniej Idiomatic, ale w końcu wpadłem na JS_CodeSniffer



2

Ja i kilka innych niedawno ułożyła te (PDF lub HTML)

Są one przede wszystkim przeznaczone do użycia z Ajax Control Toolkit, ale realistycznie zawierają wszelkiego rodzaju przydatne wskazówki, niezależnie od używanego frameworka.

Mam nadzieję, że to pomaga.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.