"Merhaba, Amigo!"

"Merhaba, Bilaabo!"

"Sizi gördüğüme sevindim. Bugün küçük ama çok bilgilendirici bir dersimiz var. Bugün size JavaScript dilinden bahsedeceğim."

JavaScript - 1

"Yeni bir dil mi? Ne kadar ilginç..."

"JavaScript, İnternet sayesinde şu anda popüler. Gerçek şu ki, tüm tarayıcıların çalıştırabildiği tek dil. Web sayfanıza animasyon veya mantık eklemek istiyorsanız, bunu JavaScript ile yapabilirsiniz."

"JavaScript'in en popüler dil olduğu doğru mu?"

"Evet, ama en popüler 'ikinci dil' demek daha doğru olur. C++, Java, C# ve PHP programcılarının web sayfalarını canlandırmak için JavaScript'te küçük betikler yazmaları gerekir. Ancak çok daha az insan yalnızca JavaScript'te kod yaz."

"Adı neden JavaScript? Kulağa neredeyse Java gibi geliyor."

"Aslında başlangıçta LiveScript olarak adlandırılıyordu, ancak Java daha popüler olmaya başladığında JavaScript olarak yeniden adlandırıldı."

"Java ve JavaScript tamamen farklı iki dildir. Bunları karıştırmayın."

"Java'dan farklı olarak, JavaScript'in sınıfları yoktur ve statik yazmayı, çoklu okumayı ve çok daha fazlasını desteklemez. Java, büyük bir inşaat araçları seti gibidir, JavaScript ise daha çok bir İsviçre Çakısı gibidir. JavaScript, çözmek için tasarlanmıştır. küçük görevler, ancak Java büyük ve çok büyük görevleri çözmek içindir."

"İşte JavaScript hakkında bazı gerçekler:"

"İlk gerçek, JavaScript'in işlevleri olduğu, ancak sınıfları olmadığıdır"

"Sadece birkaç işlevi kullanarak programlar yazıyorsunuz ve hepsi bu. Örneğin:"

JavaScript
function min(a, b)
{
 return a
}
java
public static int min(int a, int b)
{
return a
}

"Yeni işlevler «işlev <ad>» kullanılarak bildirilir.

"Başka bir örnek:"

JavaScript
function min(a, b)
{
 return a < b ? a: b;
}

function main()
{
 var s = 3;
 var t = 5;
 var min = min(s, t);
}
java
public static int min(int a, int b)
{
 return a < b ? a : b;
}

public static void main()
{
 int s = 3;
 int t = 5;
 int min = min(s,t);
}

"İkinci gerçek, JavaScript'in değişkenleri olduğu, ancak bu değişkenlerin türleri olmadığıdır"

"JavaScript, dinamik olarak yazılan bir dildir. Bu, değişkenlerin aslında türleri olmadığı anlamına gelir. Herhangi bir değişkene, herhangi bir türden bir değer atanabilir (değerlerin türleri vardır). Örneğin:"

JavaScript
function main()
{
 var s = "Bender";
 var k = 1;
 var n = s.length;
}
java
public static void main()
{
 String s ="Bender";
 int k = 1;
 int n = s.length();
}

"Ancak dinamik yazma, çalışma zamanı hataları riskini artırır:"

JavaScript
function main()
{
 var s = "Bender";
 var k = 1;
 var n = k.length;
}
java
public static void main()
{
 String s ="Bender";
 int k = 1;
 int n = k.length();
}

"Yukarıdaki örnekte, s (bir Dize) yerine k (bir tamsayı) değişkenini kullandık. Java'da hata derleme zamanında algılanır, ancak JavaScript'te kod daha sonra yakalanıncaya kadar yakalanmaz. çalışıyor."

"JavaScript'te bir değişken bildirmek istiyorsanız, «var <ad>» yazmanız gerekir. Değişken türleri yoktur ve yöntemler/işlevler veya argümanları için türler yoktur."

"JavaScript'in çok az katı kuralı ve çok fazla anarşisi var."

"Bir işlevi 5 bağımsız değişkenle bildirebilir ve onu iki bağımsız değişkenle çağırabilirsiniz; gerisi boş olacaktır. İki bağımsız değişkenli bir işlev bildirebilir ve onu çağırdığınızda beşi iletebilirsiniz. Üçü basitçe atılacak. Minimum kontrol var hatalar, yazım hataları ve değişiklikler üzerinde."

"Üçüncü gerçek, JavaScript'in if, for ve while ifadelerine sahip olmasıdır"

"JavaScript'te if, for ve while var. Bu harika bir haber. Şu örneklere bakın:"

JavaScript
function main()
{
 var s = "Bender";

 var result = "";

 for(var i = 0; i < s.length; i++)
 {
  result += s[i] + "";
 }
 if(result.length > 10)
 {
  alert (result);
 }
 else
 {
  while(result.length <= 10)
  {
   result += " ";
  }
  alert(result);
 }
}
java
public static void main()
{
 String s = "Bender";
 char[] s2 = s.toCharArray();
 String result = "";

 for(int i = 0; i < s.length(); i++)
 {
  result += s2[i] + "";
 }
 if(result.length() > 10)
 {
  System.out.println(result);
 }
 else
 {
  while (result.length() <= 10)
  {
   result += " ";
  }
  System.out.println(result);
 }
}

"Oldukça benzerler. Sanırım JavaScript'te yazılan kodun nasıl çalıştığını çözebilirim."

"İyimserliğiniz iyi."

"Dördüncü gerçek, JavaScript'in try-catch-finally bloklarını desteklemesidir"

" JavaScript'in istisnaları var ( Error ) ve bu iyi. Kontrol edilmiş istisnalar yok , yalnızca bir RuntimeException'a benzer kontrol edilmemiş istisnalar var . try-catch-finally yapısı Java'dakiyle aynı şekilde çalışır. Örneğin:"

JavaScript
function main()
{
 try
 {
  var s = null;
  var n = s.length;
 }
 catch(e)
 {
  alert(e);
 }
}
java
public static void main()
{
 try
 {
  String s = null;
  int n = s.length();
 }
 catch(Exception e)
 {
  System.out.println(e);
 }
}

"String'in uzunluğunu almaya çalıştığımızda, değişken null olduğu için bir istisna atılacak."

"Beşinci gerçek, JavaScript'in dizilere sahip olmasıdır"

"İyi haber: JavaScript'te diziler var. Kötü haber: liste veya koleksiyon yok."

"Başka bir iyi haber de, dizilerin yeni öğeler eklendiğinde dinamik olarak genişleyebilmesi ve öğeler çıkarıldığında azalabilmesidir. Bu daha çok bir dizi ve liste arasında bir melez gibidir. "

Örneğin:

JavaScript
function main()
{
 var m = [1, 3, 18, 45, 'c', "roma", null];
 alert(m.length); // 7

 m.push("end");
 alert(m.length); // 8

 for (var i = 0; i < m.length; i++)
 {
  alert(m[i]);
 }
}
java
public static void main()
{
 List m = Arrays.asList(1, 3, 18, 45,'c', "roma", null);
 System.out.println(m.size()); // 7

 m.add("end");
 System.out.println(m.size()); // 8

 for (int i = 0; i < m.size(); i++)
 {
  System.out.println(m.get(i));
 }
}

"Dizi bildirimindeki köşeli parantezler nedir?"

"Dizi bildirimi tam olarak budur. Bir diziyi bildirmek için köşeli parantezler yazmanız gerekir. Sonra dizinin öğelerini parantezler arasında listelersiniz. Boş bir diziyi basitçe bir çift parantez ile bildirirsiniz."

Örnek
var m = [];

"Altıncı gerçek, JavaScript'in nesneleri olduğudur"

"JavaScript'in nesneleri vardır. Aslında, JavaScript'teki her şey, hatta ilkel türler bile bir nesnedir. Her nesne, bir dizi anahtar-değer çifti olarak temsil edilir. Kabaca, her JavaScript nesnesi, Java'daki bir HashMap'e eşdeğerdir. İşte bir örnek bir nesne bildirimi:"

JavaScript
function main()
{
 var m = {
  first_name : "Bill",
  last_name: "Gates",
  age: 54,
  weight: 67,
 children: ["Emma", "Catrin"],
 wife: {
  first_name : "Melinda",
  last_name: "Gates",
  age: 45,
  }
};

 alert(m.first_name); // Bill
 alert(m.age); // 54
 alert(m.wife.first_name); // Melinda

 m.age = 45;
 m.age++;
 m["first_name"] = "Stive";
 m["wife"] = null;
java
public static void main()
{
 HashMap m = new HashMap();
 m.put("first_name", "Bill");
 m.put("last_name", "Gates");
 m.put("age", 54);
 m.put("weight", 67);

 String[] children = {"Emma", "Catrin"};
 m.put("children", children);

 HashMap wife = new HashMap();
 wife.put("first_name", "Melinda");
 wife.put("last_name", "Gates");
 wife.put("age", 45);
 m.put("wife", wife);

 System.out.println(m.get("first_name"));
 System.out.println(m.get("age"));

 HashMap w = ((HashMap)m.get("wife"));
 System.out.println(w.get("first_name")));

 m.put("age", 45);
 m.put("age", ((Integer)m.get("age")) + 1);
 m.put("first_name", "Stive");
 m.put("wife", null);

"Yeni bir nesne oluşturmak için iki kaşlı ayraç yazmanız yeterlidir: «{}»."

"Parantez içinde, nesne verilerini şu biçimde belirtebilirsiniz: «anahtar, iki nokta üst üste, değer, virgül»."

"Nesne alanlarına iki şekilde erişilebilir:"

Eşdeğer ifadeler
m.age = 45;
m[age] = 45;

"Belirtilen alan yoksa oluşturulur."

"Tahliye valfim aşırı yüklenmiş falan. Sanırım ara vermeliyiz."

"Yedinci gerçek, JavaScript'in web sayfalarında çalışmak için yaratılmış olmasıdır."