İki Tür Yorum Satırı
JavaScript'te iki farklı yorum satırı söz dizimi vardır. Tek satırlık yorum // ile başlar ve satırın sonuna kadar devam eder:
Blok yorum /* ile başlar ve bir sonraki */ işaretine kadar devam eder. İstediğiniz kadar satıra yayılabilir:
Her iki yazım şekli de JavaScript motoru tarafından tamamen görmezden gelinir. Yorumlar insanlar için vardır — senin için, ekip arkadaşların için ve altı ay sonra bu kodu tekrar okuyacak olan gelecekteki sen için.
JavaScript tek satır yorum
En sık kullanacağın yöntem // ile yorum yazmaktır. // işaretinden sonra aynı satırda yazdığın her şey yorum sayılır; bir alt satıra geçtiğinde ise kod kaldığı yerden devam eder:
Satır sonu yorumları (bir ifadenin ardına düşen yorumlar) kısa notlar için gayet uygundur. Ama not uzayıp satırı aşmaya başladıysa, kodu yorum satırına almak yerine yorumu kodun üstüne, kendi satırına taşı. Uzun satır sonu yorumları editörlerde kırpılır ve zaten kimse okumaz.
Çok Satırlı Yorum (Blok Yorum)
/* */ kullanımına iki durumda başvurmak mantıklıdır: yorum birden fazla satıra yayılıyorsa ya da bir ifadenin tam ortasına yorum düşmen gerekiyorsa.
Şöyle bir tuzak var: blok yorumlar iç içe geçmez. Dıştaki yorumun içinde olduğunuzu sansanız bile, ilk */ yorumu bitirir:
/* dış /* iç */ hâlâ dış */
// SyntaxError — ilk */ bloğu kapattı,
// ve "hâlâ dış */" artık geçersiz koddur.
Eğer yorum satırına almak istediğin kod zaten /* */ içeriyorsa, her satırın başına // eklemeyi tercih et.
Kodu Yorum Satırına Alma
Hata ayıklama sırasında birkaç satırı geçici olarak devre dışı bırakmak isteyeceğin anlar olur. Bunun için iki yorum biçimi de işini görür:
Her editörün bu iş için bir kısayolu vardır — Windows/Linux'ta Ctrl+/, Mac'te Cmd+/ — seçtiğiniz satırların başına // ekler ya da kaldırır. Bir kere öğrenin, her gün kullanacaksınız.
Yorum satırına alınmış kodun geçici olması gerekir. // eski versiyon, ne olur ne olmaz dursun gibi notlarla ölü kod mezarlıklarını repo'ya göndermeyin. Eski kodu sizin için versiyon kontrolü zaten hatırlıyor. Silin gitsin.
Ne'yi Değil, Neden'i Yorumlayın
Faydalı yorumu gürültüden ayıran tek kural budur. Kod, ne yaptığını zaten gösteriyor. İyi bir yorum ise neden yapıldığını anlatır.
Gürültü:
Bu yorumlar, kodun zaten söylemediği hiçbir şeyi okuyucuya anlatmıyor. Şununla karşılaştırın:
Her iki yorum da okuyucunun sadece koda bakarak anlayamayacağı bir şeye işaret ediyor: dışarıdan gelen bir kısıt ya da dokümante edilmiş bir tuhaflık. Ölçüt tam olarak bu. Yorumu silseniz kimsenin kafası karışmayacaksa, o yorum zaten işe yaramıyordur.
JSDoc nedir ve ne işe yarar?
JSDoc, fonksiyonları yapılandırılmış bir biçimde anlatan blok yorumlar yazmak için kullanılan bir yazım kuralıdır. Editörler ve tip denetleyicileri bu yorumları okuyup size daha iyi otomatik tamamlama ve imleçle görünen dokümantasyon sunar:
/** (iki yıldız) ile başlaması, bunu sıradan bir blok yorum yerine JSDoc yapan şeydir. Her fonksiyona JSDoc yazmak zorunda değilsiniz; en çok işe yaradığı yerler public API'lar, ortak kullanılan yardımcı fonksiyonlar ve tiplerin koddan doğrudan anlaşılamadığı durumlardır.
Edinmeye Değer Birkaç Alışkanlık
- Yorumu, anlattığı kodun hemen yanına yazın. İlgili satırın on satır yukarısında duran bir yorum, kod değiştikçe gerçeklikten kopmaya başlar.
- Kodu değiştirdiğinizde yorumu da güncelleyin. Güncelliğini yitirmiş bir yorum, hiç yorum olmamasından daha kötüdür; sonraki okuyucuyu resmen yanıltır.
- Daha fazla yorum yerine daha iyi isimler tercih edin.
const d = 86400000;yorum ister.const MILLISECONDS_PER_DAY = 86_400_000;istemez. - Geçici sorunları
TODO:veyaFIXME:ile işaretleyin. Çoğu editör bunları vurgular, sonradangrepile bulmak da kolaydır.
HTML ve JavaScript Yorum Satırı Farkı
JavaScript kodunu bir HTML dosyasının içinde yazıyorsanız, iki yorum stilini birbirine karıştırmamaya dikkat edin. HTML'de <!-- --> kullanılır; JavaScript'te ise // ve /* */. Bir <script> etiketinin içinde sadece JavaScript'in yorum biçimleri çalışır:
<script>
// Doğru — <script> içinde JS yorumu
/* Bu da doğru */
<!-- Yanlış — bu bir HTML yorumudur ve JS'nizi bozar -->
console.log("hi");
</script>
Tarayıcılar, eski tarayıcılarla uyumluluk gerekçesiyle <!-- --> sözdizimine script içinde tarihsel olarak göz yumdu; ama siz bunu bozuk kabul edin ve üstünde durmayın.
Sırada: Değişken Tanımlama
Artık kodunuza yorum ekleyebildiğinize göre, sıra kod yazmaya geldi. JavaScript'te değişken tanımlamanın üç yolu var: let, const ve var. Hangisini seçeceğiniz, yazdığınız her satırda vereceğiniz ilk gerçek karar olacak. Bir sonraki konu tam olarak bu.
Sıkça Sorulan Sorular
JavaScript'te yorum satırı nasıl yazılır?
Tek satırlık yorum için // kullanılır; satırın geri kalanındaki her şey yok sayılır. Birden fazla satıra yayılan yorumlar içinse /* ... */ bloğu kullanılır. Her ikisi de hem .js dosyalarında hem de HTML içindeki <script> etiketlerinde sorunsuz çalışır.
JavaScript'te // ile /* */ arasındaki fark nedir?
// sadece bulunduğu satırın sonuna kadar geçerlidir. /* */ ise /* ile başlar ve ilk */ ile biter; yani birden fazla satırı sarabilir ya da bir ifadenin ortasına satır içi olarak eklenebilir. Kısa notlar için //, birden fazla satır gerektiğinde veya bir ifadenin bir parçasını açıklamak istediğinizde /* */ tercih edin.
JavaScript'te bir kod bloğu yorum satırına nasıl alınır?
Kodu /* */ içine alabilir ya da her satırın başına // ekleyebilirsiniz. Çoğu editörde bunun için bir kısayol vardır: Ctrl+/ (Mac'te Cmd+/) seçili satırları // ile yorumlar. /* */ bloklarını iç içe kullanmayın; ilk karşılaşılan */ dıştaki yorumu da kapatır ve sözdizimi hatası alırsınız.
Ne zaman yorum yazmalıyım?
Kodun ne yaptığını değil, neden yaptığını açıklayın. Eğer kod bariz olmayan bir şey yapıyorsa — bir geçici çözüm, bir iş kuralı, bir performans hilesi — nedenini yazın. Kodun zaten söylediği şeyi tekrar etmeyin. İyi isimlendirilmiş bir değişken veya fonksiyon, yorumların büyük kısmını gereksiz kılar.