JavaScript — Web'in Motoru
2026 yılında hâlâ dünyanın en popüler programlama dili olan JavaScript'i sıfırdan öğreniyoruz.
JavaScript (kısaca JS), 1995 yılında Brendan Eich tarafından 10 gün içinde yaratılan ve bugün dünyanın en yaygın programlama dili haline gelen bir teknolojidir. Web tarayıcılarının anlayabildiği tek programlama dili olması onu vazgeçilmez kılar. Aynı zamanda Node.js sayesinde sunucu tarafında, React Native ile mobil uygulamalarda da kullanılmaktadır.
1. Değişkenler: let, const ve var
JavaScript'te değerleri saklamak için üç farklı anahtar kelime kullanırız. Modern JS'de var kullanmaktan kaçının:
// const: Değiştirilemeyen sabit değerler
const siteAdi = 'CodeMareFi';
const pi = 3.14;
// let: Değiştirilebilir değerler
let skorToplami = 0;
skorToplami = 150; // Geçerli
// var: ESKİ YÖNTEM - KULLANMAYIN
var eskiYontem = 'bugülere açık'; // Kapsam sorunu yaratabilir
2. Veri Tipleri
JavaScript dinamik tipli bir dildir; değişkenin tipini siz belirlemezsiniz, JavaScript otomatik anlar:
// Temel tipler
const metin = 'Merhaba Dünya'; // string
const sayi = 42; // number
const ondalik = 3.14; // number (ayrım yok!)
const dogru = true; // boolean
const tanimsiz = undefined; // undefined
const bos = null; // null
// Referans tipler
const dizi = [1, 2, 3, 'dort']; // Array
const nesne = { // Object
isim: 'Ali',
yas: 22,
aktif: true
};
console.log(typeof metin); // 'string'
console.log(typeof sayi); // 'number'
3. Fonksiyonlar
Fonksiyonlar belirli bir işi yapan ve tekrar kullanılabilir kod bloklaridır. Yazılmasının birden fazla yolu var:
// Geleneksel fonksiyon tanımlama
function topla(a, b) {
return a + b;
}
// Arrow (ok) fonksiyon — modern ve kısa
const topla2 = (a, b) => a + b;
// Opsiyonel parametreli fonksiyon
function selamla(isim = 'Ziyaretçi') {
return 'Merhaba, ' + isim + '!';
}
console.log(topla(5, 3)); // 8
console.log(selamla()); // Merhaba, Ziyaretçi!
console.log(selamla('Baris')); // Merhaba, Baris!
4. Dizi (Array) İşlemleri
Diziler birden fazla değeri tek değişkende tutmak için kullanılır. En sık kullanılan metotlar:
const sayilar = [1, 2, 3, 4, 5];
// map: Her elemani dönüştür
const kareler = sayilar.map(n => n * n);
// [1, 4, 9, 16, 25]
// filter: Koşula uyanları seç
const ciftler = sayilar.filter(n => n % 2 === 0);
// [2, 4]
// reduce: Tek bir değere indir
const toplam = sayilar.reduce((akm, n) => akm + n, 0);
// 15
// find: İlk eşleşeni bul
const ilkBes = sayilar.find(n => n > 3);
// 4
5. Asenkron JavaScript (Async/Await)
Sunucu'dan veri çekmek veya bir işlemin bitmesini beklemek için asenkron programlama kullanırız. Modern yaklaşım async/await:
// API'den kullanıcı verisini çeken fonksiyon
async function kullaniciGetir(id) {
try {
const yanit = await fetch('https://api.ornek.com/users/' + id);
if (!yanit.ok) {
throw new Error('Kullanıcı bulunamadı!');
}
const kullanici = await yanit.json();
console.log('Kullanıcı:', kullanici.isim);
return kullanici;
} catch (hata) {
console.error('Hata:', hata.message);
}
}
kullaniciGetir(1);
6. DOM Manipülasyonu
JavaScript ile HTML sayfasının içeriğine erişebilir, değiştirebilir ve olayları dinleyebilirsiniz:
// Elementi seç
const baslik = document.querySelector('h1');
const butonlar = document.querySelectorAll('.btn');
// İçeriği değiştir
baslik.textContent = 'Merhaba JavaScript!';
baslik.style.color = '#e60000';
// Olay dinleyici ekle
const buton = document.getElementById('gonder-btn');
buton.addEventListener('click', () => {
alert('Butona tıklandı!');
buton.textContent = 'Gönderildi ✔';
buton.disabled = true;
});
JavaScript temellerini öğrendikten sonra sırasıyla React (arayüz geliştirme), Node.js (sunucu tarafı) ve Next.js (full-stack) öğrenmek kariyer yolculuğunuzu hızlandıracaktır. Sitemizdeki JavaScript ve web geliştirme yazılarımızı takip edin!
