Apakah ada standar pengkodean untuk JavaScript? [Tutup]


178

Apa standar pengkodean yang ditetapkan untuk JavaScript?


1
Melihat pertanyaan ini masih muncul di pencarian google, saya pikir menambahkan ini mungkin relevan. JavaScript adalah implementasi skrip ECMAScript, mengikuti standar ECMA. Standar ECMA-262 . Untuk menambahkan dari halaman wiki ECMA :Netscape delivered JavaScript to Ecma International for standardization and the work on the specification, ECMA-262, began in November 1996
Tidak

12
Tertutup DAN dilindungi. Hah!?!
Robbie Dee


12
//, MENGAPA ini sudah ditutup? Ini pertanyaan yang sangat bagus untuk programmer Javascript baru. Terutama mengingat, ah, status sebagian besar kode Javascript asli yang ditulis oleh programmer baru.
Nathan Basanese

1
Anda dapat menggunakan Panduan Gaya JavaScript Airbnb untuk standar pengkodean terkini github.com/airbnb/javascript
Naresh Chennuri

Jawaban:


76

Tidak persis apa yang Anda cari, tetapi (seperti vids Doug Crockford) Saya pikir semua orang yang menulis / mengedit / ulasan JS harus melihat slide dan video Chris Heilmann pada javascript yang dapat dikelola.

Dalam slide , slide 127, dia berkata jangan terlalu khawatir tentang panduan gaya / standar kode, memformat ulang semua kode yang terdaftar di VCS.

Juga ini:

Kiat JavaScript Mozilla

Panduan Gaya JavaScript



3
Dalam upaya untuk menyelesaikan pertanyaan ini (menemukan dan memutuskan Gaya Kode JavaScript, sambil memberikan fleksibilitas), saya telah membuat jscode.org di mana Anda dapat menghasilkan gaya kode khusus berdasarkan beberapa pengaturan (ya, mungkin terdengar seperti terang-terangan iklan, tapi saya tidak mendapatkan apa pun di sana, saya hanya membuat ini untuk saya dan tim saya, dan saya pikir itu bernilai baik).
Bruno Bernardino

Tips JavaScript Mozilla sangat jarang, saya tidak akan memasukkannya.
Analisis Fuzzy

24

Alasan lain mengapa pedoman koding JavaScript Crockford adalah ide yang baik untuk diikuti:

Kode ini (di bawah) sebenarnya mengembalikan undefined karena injeksi titik koma JavaScript - yang merupakan alasan bagus untuk membuat seluruh tim pengembang bernyanyi dari lembar lagu yang sama:

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

Sedikit lebih banyak tentang itu di Waspadai penyisipan titik koma JavaScript


2
Ada juga JSLint untuk membantu mengotomatiskan / memverifikasi beberapa pedoman ini. jslint.com
Funka

10

Saya tidak pernah melihat standar pengkodean JavaScript yang diakui secara luas di luar sana. Kami memang menulis sendiri beberapa waktu lalu dan saya menerbitkannya di blog saya sesuai dengan majikan saya.

Ingatlah bahwa beberapa pedoman mungkin sedikit ketinggalan zaman.


Dokumen ini memiliki referensi untuk 'pedoman pemrograman C #'. Apakah Anda juga tersedia untuk umum?
z-boss


6

Anda dapat menemukan beberapa konvensi pengkodean yang sederhana namun penting di Google Code Wiki .

Untuk panduan gaya yang sangat terperinci, baca Panduan Gaya Dojo . Ini membahas konvensi penamaan, konvensi file, penggunaan variabel, tata letak kode, spasi putih, dan komentar.


4

Agak bingung bahwa saya tidak dapat menemukan pada balasan Idiomatic.js dan Panduan Gaya Inti jQuery . Addy Osmani menempatkan keduanya di bagian paling atas dari daftar penuh gaya pengkodean untuk JavaScript dalam artikelnya "JavaScript Style Guides And Beautifiers".

Saya pribadi lebih suka standar jQuery, meskipun tidak jauh berbeda dari Idiomatic.js. Tetapi standar apa pun yang Anda pilih, Anda akan memerlukan validator untuk memeriksa seberapa sukses Anda mengikutinya. Saya tidak dapat menemukan jQuery atau setidaknya Idiomatic, tetapi akhirnya muncul dengan JS_CodeSniffer



2

Saya sendiri dan beberapa orang lainnya baru-baru ini mengumpulkan ini (PDF atau HTML)

Mereka terutama ditujukan untuk digunakan dengan Ajax Control Toolkit tetapi secara realistis mengandung semua jenis panduan yang berguna, kerangka mana pun yang Anda gunakan.

Semoga itu bisa membantu.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.