JavaScript ile VBScript arasında işlev ve yapı bakımından fark yoktur. Kod yazmak için ikisini birden öğrenmeniz şart değil elbette. Ama başkalarının kodlarını araştırmak ve bir şeyler öğrenmeye çalışmak gibi harika bir hobiniz varsa, neden ikisini birden öğrenmeyesiniz? Bazı sayfalarda "Şöyleyse VBScript, böyleyse JavaScript öğrenmenizi tavsiye ederim" gibilerinden laflar ediliyor. Ben böyle bir tavsiyede bulunamam açıkçası. Ama şunu bilin, VBScript biraz daha kolay öğreniliyor gibi. Bununla birlikte JavaScript`in çok daha yaygın olduğu da bir gerçek. Visual Basic bilenler VBScript`i daha kolay, C veya Java bilenler, JavaScript`i daha kolay öğrenecektir. Son söyleyeceğim şey, ikisi de basit, dilerseniz her ikisini birden rahatlıkla öğrenebilirsiniz.
JavaScript (VBScript) HTML`in bir parçasıdır aslında; derleyici bir programa ihtiyaç duymaz, HTML kodlarıyla beraber yazılır ve gözatıcı (browser) tarafından yorumlanır.
JavaScript`in (VBScript`in) işlevleri yazmakla bitmez ya, ben aklıma geldiğince listeledim:
* HTML tasarımcılarına bir programlama desteği sağlar, bünyesinde değişkenler, fonksiyonlar, döngüler, yordamlar bulundurur.
* HTML sayfalarına hareketli HTML nesneleri (metin, resim, vb.) koyabilmemizi sağlar.
* Olaylara tepki verir. (Olaydan kastettiğim şey: tıklamak, tuşa basmak, sayfa açmak gibi şeyler.)
* HTML elemanlarını okuyabilir veya yazabilir.
* Kullanıcı ile bilgi alışverişinde bulunmamızı sağlar. Zira HTML formları JavaScript (VB Script) olmadan pek bir işe yaramaz. (Ayrıca ASP derslerinde de kullanacağız.)
HTML`e JavaScript Kodlarını Tanıtma
JavaScript HTML kodları arasında nasıl kullanılır? JavaScript kodlarını HTML`e tanıtmak için Java Script kodlarını <script language="JavaScript">...</script> HTML kodları arasına yazarız. Not: VBScript için language="VBScript" parametresi kullanılır.
Aşağıdaki uygulama ilk JavaScript örneğimiz:
HTML:
<html>
<head>
<title>JavaScript Uygulaması</title>
</head>
<body>
<script language="JavaScript">
document.write("Merhaba")
</script>
</body>
</html>
Burada <script language="JavaScript">...</script> arasında yazılı olan bir tane JavaScript kodu bulunmakta: document.write("..."). Bu kod, parantez içine yazılan HTML kodlarını uygular. Tabi bu uygulama için JavaScript koduna ihtiyacımız yok aslında, doğrudan Merhaba deseydik, yine Web Sayfamız saygıda kusur etmez, bize Merhaba derdi. Ama ileriki konularda bu koda ihtiyacımız olacak. Bu uygulamada HTML kodu olarak düz bir metin kullandık. Parantez içindeki HTML kodunu biraz daha zenginleştirebiliriz:
HTML:
<html>
<head>
<title>JavaScript Uygulaması 2</title>
</head>
<body>
<script language="JavaScript">
document.write("<font size=6 color=blue>")
document.write("Merhaba")
document.write("</font>")
</script>
JavaScript`in en sevmediğim özelliğini anlatmadan geçemem. JavaScript`te (VBScript`te herşeyi illâ ki harfi harfine yapacaksın. Küçücük bir hata, sayfanızın çıkmamasına ve pencerenin alt kısmında JavaScript hatası belirmesine neden olur. Bu zamana kadar HTML gibi esnek bir dille çalışıyorduk; bu nedenle bu sayfalarla ilgili örnekler yaparken biraz yorulabilirsiniz.
JavaScript kodlarının HTML`deki Konumu
JavaScript yukarıdaki uygulamalarda olduğu gibi <body>...</body> kodları arasında yer alabileceği gibi; fonksiyon halinde, <head>...</head> arasında da yer alabilir:
Javascript:
<script language="JavaScript">
function selam()
{
alert("Merhaba")
}
</script>
</head>
<body onload="selam()">
</body>
</html>
Bu örnek hiçbir programlama dili bilmeyen birisi için anlaşılması biraz zor. Kabaca anlatayım; anlamayanlar için ileriki sayfalarda genişçe anlatacağım: Bu uygulamada JavaScript kodu <head> bölümünde fonksiyon halinde yer alıyor. function selam() ifadesi ile selam() isimli bir fonksiyon tanımlıyoruz. Bu fonksiyonun ne yaptığını süslü parantezler arasına yazarız. Örneğin selam() fonksiyonunun içeriğinde alert("...") kodu vardır. Bu JavaScript kodu, tırnak içindeki ifadeyi mesaj kutusuyla göstermeye yarar. Demek ki selam fonksiyonu, mesaj kutusuyla "Merhaba" demeye yarıyormuş. Dikkat ederseniz <body> koduna onload="..." (İngilizce`de "yüklendiği takdirde" demek) durumu atanmış. Yani sayfa yüklenildiğinde selam() mesajı veriliyor.
JavaScript kodu; CSS`de olduğu gibi, dış bir dosyayla da HTML`e tanıtılabilinir. CSS dosyası .css uzantılıydı. Dış JavaScript dosyası ise .js uzantılıdır. Aşağıdaki metin dosyasını selam.js ismiyle kaydettim:
Javascript:
document.write("<center>")
document.write("<h1>Merhabalar!</h1>")
document.write("</center>")
Şimdi bu dış JavaScript dosyasını HTML sayfasına tanıtıyorum:
HTML:
<html>
<head>
<title>JavaScript Uygulaması</title>
</head>
<body>
<script src="selam.js">
</script>
</body>
</html>