JavaScript Sözlük Yapısı (Lexical Structure)

lexical JS

 


Bir dilin sözlük(lexical) yapısı, o dil ile nasıl program yazılacağının kurallarını oluşturan kümeden ibarettir.Dilin en düşük seviyeli sözdizimidir: değişken adları nasıl görünecek, yorumlar için karakterleri sınırlamaları nasıl olacak, programdaki bir ifade diğerinden nasıl ayırt edileceği gibi konular dilin sözlük yapısına girer.

KARAKTER KÜMESİ

JavaScript programları Unicode karakter setini kullanır. Unicode, ASCII ve Latin-1 karakter setlerinin birleşiminden oluşur ve yeryüzündeki bütün diller tarafından desteklenir.

Büyük Küçük Harf Duyarlılığı

JavaScript büyük-küçük harfe duyarlıdır.Bunun anlamı değişkenler, dilin anahtar kelimeleri,fonksiyon adları  ve diğer tanımlayıcılar(identifiers) tutarlı şekilde yazılmalıdır. Örneğin while anahtar kelimesi kesinlikle “while” şeklinde yazılmalıdır.While” , “wHile” , “WHILE” dil tarafından anlamsız karşılanır. Aynı şekilde onLine , Online , OnLine ve ONLINE javascript dilinde birbirinden bağımsız dört farklı değişkeni ifade eder.

HTML ise durum farklıdır. HTML de büyük-küçük harf duyarlılığı olmadığından bir çok JavaScript nesnesi  aynı HTML tagı veya özelliği ile ifade edilebilir. Ancak javascriptte bunları kullanırken kesinlikle küçük harfle yazılmalıdır. Örneğin HTML deki “OnClick” eventı birden farklı şekilde yazılabilir ancak bu eventı javascript kodumuzda kullanacaksak kesinlikle “onclick” şeklinde yazmalıyız.

Boşluk,Satır Atlama, Format Kontrol Karakterleri

JavaScript programdaki tokenlar arasındaki boşluğu gözardı eder.Ancak biz kodlarımızı yazarken okunabilirlik açısından boşluk ve satır atlamalarını kullanacağız. Yine de illa boşluk kullanıp satır atlamak istiyorsak

  • Boşluk için : \u0020
  • Tab için : \u0009
  • Dikey Tab için : \u0008

kullanabiliriz.

 

Yorumlar

JavaScriptte iki şekilde yorum kısımları oluşturabiliriz:

  • “//”  :  O anki satırı yorum satırı yapar.
  • “/* comments… */” : işaretleri arasına yazılan her şey yorum olarak algılanır.

Basım Şekilleri (Literals)

  • 12                          // Integer 12 sayısı
  • 1.2                         // 1.2 kayan noktalı sayısı.
  • “hello world”      // String örneği
  • ‘Merhaba’            // Bir diğer string örneği
  • true                      // boolean değer
  • /javascript/gi     // “regular expression” yazım şekli (Pattern eşleme için)
  • null                       // yokluk nesnesi

Tanımlayıcılar(Identifiers) ve Saklı Kelimeler(Reserved Words)

Tanımlayıcı temel olarak bir fonksiyonun , değişkenin  adını temsil eder. JavaScriptte tanımlayıcı:

  • Bir harf ile : i , degisken_adi …
  • (_) ile          : _ degisken1 , degisken2 …
  • ($) ile          : $str, $degisken…

şeklinde tanımalanabilir.Ancak değişken adları sayı ile başlamaz.Ayrıca buna ek olarak matematiksel özel ifadelerde değişken adı olarak kullanılabilir örneğin:

  • var Ω = true; 
  • var π = 3.14;

Aşağıdaki kelimeler ise dil tarafından kullanıldığı için kullanıcı tarafından tanımlanması yasaktır.

snapshot5     snapshot6 snapshot7 snapshot8 snapshot9

İsteğe Bağlı Noktalıvirgül(;) Kullanımı

JavaScript ifadeleri birbirinden ayırmak için (;) kullanır. Kodun anlaşılabilirliği ve yanlış parse edilmesine karşın “;” kullanmak önemlidir. Örneğin;

  • var a a = 3 console.log(a)

JavaScrip bu kodu:

  • var a;   a = 3 ;  console.log(a);  

şeklinde yorumlar.Ancak burada doğru gibi görünen yorumlama şekli “;” kullanılmadığı takdirde hatalı yorumlamalara sebep olabilir.Örneğin:

return
          true;

burada bizim kastettiğimiz ifade muhtemelen:

 return true; 

ancak JavaScript bu ifadeyi:

 return;
         true;

şeklinde yorumlar.Böyle hataları gidermek ve anlaşılırlığı artırmak amacıyla (;) kullanmak önemlidir.

653 total views, 0 views today

Facebooktwittergoogle_plusredditpinterestlinkedinmail

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Time limit is exhausted. Please reload CAPTCHA.