JavaScript Nedir?

Makale

JavaScript, birinci sınıf fonksiyonlara sahip hafif, yorumlanan bir programlama dilidir. Tüm büyük web tarayıcılarında yerel olarak çalışan tek programlama dilidir; bu da onu webin dili yapar. JavaScript, HTML sayfalarına etkileşim, animasyonlar ve dinamik davranış kazandırır. Node.js sayesinde sunucularda da çalışır; bu da onu hem front-end hem de back-end geliştirmeyi kapsayan tek dil haline getirir.

JavaScript dosyanızı formatlamak veya güzelleştirmek ister misiniz?

JavaScript Formatlayıcıyı Aç →

Tarihçe

JavaScript, Mayıs 1995'te Netscape'de Brendan Eich tarafından yalnızca 10 günde oluşturulmuştur. Başlangıçta Mocha, ardından LiveScript olarak adlandırılmış, Sun'ın Java dilinin popülaritesinden yararlanmak amacıyla JavaScript adını almıştır. İsim benzerliğine karşın iki dil birbirleriyle ilgisizdir. JavaScript, 1997 yılında Ecma International tarafından ECMAScript (ES) olarak standartlaştırılmıştır. Önemli kilometre taşları arasında ES5 (2009), ES6/ES2015 (2015 — dil tarihinin en büyük güncellemesi) ve ES2016'dan itibaren yıllık sürümler yer almaktadır.

Temel Sözdizimi

JavaScript dinamik olarak tiplenmiştir: değişkenler herhangi bir türde değer tutabilir ve tipler çalışma zamanında kontrol edilir. Modern JavaScript, değişken bildirimleri için let ve const kullanır. Fonksiyonlar birinci sınıf değerlerdir; değişkenlere atanabilir, argüman olarak geçirilebilir ve diğer fonksiyonlardan döndürülebilir.

// Değişkenler
const isim = "Ahmet";
let yas = 25;

// Fonksiyon
function selamla(kisi) {
  return `Merhaba, ${kisi}!`;
}

// Ok fonksiyonu
const kare = (n) => n * n;

// Dizi metodları
const sayilar = [1, 2, 3, 4, 5];
const ikiler  = sayilar.map(n => n * 2);       // [2, 4, 6, 8, 10]
const ciftler = sayilar.filter(n => n % 2 === 0); // [2, 4]

// Async / Await
async function kullaniciyiGetir(id) {
  const yanit = await fetch(`/api/kullanici/${id}`);
  const veri  = await yanit.json();
  return veri;
}

Veri Tipleri

JavaScript'in sekiz veri tipi vardır — yedi ilkel tip ve bir nesne tipi:

Temel Kavramlar

Yaygın Kullanım Alanları

JavaScript ile Java Karşılaştırması

Benzer ada rağmen JavaScript ve Java tamamen farklı dillerdir:

JavaScript ile TypeScript Karşılaştırması

TypeScript, Microsoft tarafından geliştirilen ve düz JavaScript'e derlenen bir JavaScript üst kümesidir:

Dikkat Edilmesi Gereken Kurallar

Sık Sorulan Sorular

JavaScript nedir?

JavaScript, birinci sınıf fonksiyonlara sahip hafif, yorumlanan bir programlama dilidir. Tüm büyük web tarayıcılarında yerel olarak çalışan tek programlama dilidir ve web sayfalarına etkileşim, animasyonlar ve dinamik davranış kazandırmak için kullanılır. Node.js aracılığıyla sunucularda da çalışabilir.

JavaScript ne için kullanılır?

JavaScript; etkileşimli web sayfaları (form doğrulama, animasyonlar, DOM manipülasyonu), tek sayfa uygulamaları (React, Vue, Angular), sunucu tarafı geliştirme (Node.js), mobil uygulamalar (React Native), masaüstü uygulamalar (Electron) ve tarayıcı eklentileri için kullanılır.

JavaScript ile Java aynı mı?

Hayır. JavaScript ve Java, yalnızca benzer bir adı paylaşan tamamen farklı dillerdir. Java, derlenmiş, statik tipli, nesne yönelimli bir dildir. JavaScript ise yorumlanan, dinamik tipli olup başlangıçta tarayıcı betikleme için tasarlanmıştır.

JavaScript ile TypeScript arasındaki fark nedir?

TypeScript, Microsoft tarafından geliştirilen ve isteğe bağlı statik tipleme ekleyen bir JavaScript üst kümesidir. TypeScript kodu düz JavaScript'e derlenir. Tüm JavaScript kodu geçerli TypeScript'tir; ancak TypeScript, derleme zamanında hataları yakalamaya yardımcı olan tip açıklamaları, arayüzler ve genel türler ekler.

JavaScript front-end mi yoksa back-end mi?

Her ikisi. JavaScript başlangıçta yalnızca tarayıcılarda (front-end) çalışıyordu. Node.js ile (2009) artık sunucularda (back-end) da çalışabilmektedir. Bu, JavaScript'i hem front-end hem de back-end geliştirme için kullanılabilen tek dil yapar.

JavaScript öğrenmesi kolay mı?

JavaScript'in giriş engeli görece düşüktür — başlamak için yalnızca bir tarayıcıya ihtiyacınız var. Değişkenler, döngüler ve fonksiyonlar gibi temel kavramlar anlaşılırdır. Ancak asenkron programlama, olay döngüsü, prototipsel kalıtım ve framework ekosistemlerinde uzmanlaşmak zaman alır.

İlgili Makaleler

Kaynaklar