JavaScript temelleri
Değişkenler, fonksiyonlar, diziler ve nesneler.
Seviye 101 · 20 ders · 18 pratik lab
Dersler
Dilin temelleri
- Betik eklemek ve konsol: Sayfaya JavaScript eklemeyi ve tarayıcı konsolunda küçük denemeler yapıp çıktıyı görmeyi öğrenirsin.
- let, const ve türler: let ve const ile değişken tanımlamayı, değişebilen ile değişmeyen değeri ayırmayı ve temel veri türlerini tanırsın.
- İşleçler ve eşitlik (== ile ===): İşleçleri kullanmayı, == ile === arasındaki farkı ve neden sıkı eşitliğin daha güvenli olduğunu anlarsın.
- Koşullar: Kodun bir koşula göre farklı yol seçmesini if ve else ile yazmayı öğrenirsin.
- Döngüler: Bir işi birçok kez tekrar eden döngüleri yazmayı ve ne zaman duracaklarını belirlemeyi öğrenirsin.
- Şablon dizgileri: Ters tırnakla değişkenleri metne gömer, çok satırlı metin üretirsin.
- Dizgi yöntemleri: Metni bölmek, aramak, kırpmak ve değiştirmek için yerleşik dizgi yöntemlerini kullanırsın.
- Math ve Date nesneleri: Yuvarlama, rastgele sayı ve tarih hesapları yapar, Math.random’ın güvenlik amaçlı kullanılmaması gerektiğini bilirsin.
- Kısa görev: bahşiş hesaplayıcı
Fonksiyonlar ve veri
- Fonksiyonlar: Tekrarlanan işi isimli bir fonksiyona koyup veri verip sonuç almayı öğrenirsin.
- Ok fonksiyonları: Kısa fonksiyonları ok söz dizimiyle yazar, geleneksel fonksiyondan farkını bilirsin.
- Kapsam ve hoisting: Değişkenin hangi bloktan görüldüğünü kestirir, var kaynaklı sürprizlerden kaçınırsın.
- Diziler: Birden çok değeri dizide saklamayı, eleman eklemeyi ve dizi üzerinde gezmeyi öğrenirsin.
- Nesneler: İlişkili bilgileri özellik ve değer çiftleriyle bir nesnede toplamayı ve okumayı öğrenirsin.
- Yapı bozma ve yayma: destructuring, spread: Dizi ve nesnelerden değerleri tek satırda çıkarır, kopyalayıp birleştirirsin.
- try/catch ile hata yönetimi: Hataları yakalar, kullanıcıya sade mesaj gösterirken ayrıntıyı ona sızdırmazsın.
- Kısa görev: not çizelgesi
Sayfayla konuşmak
- DOM: seçmek ve güncellemek: Sayfadaki öğeleri JavaScript ile seçip metnini ve görünümünü sayfa açıkken değiştirmeyi öğrenirsin.
- Olaylar ve olay nesnesi: Tıklama ve yazma gibi kullanıcı hareketlerine tepki veren kod yazmayı ve olay nesnesinden bilgi okumayı öğrenirsin.
- Bitirme görevi: etkileşimli sayfa: Kurgusal bir şirketin ekibi için düğmeye tıklanınca içerik değişen, küçük etkileşimli bir sayfa hazırlarsın.
Pratik lablar
- Sepet toplamındaki tür hatasını bul: Kumbara Market'in sepet toplamı 1002 yerine "1002" çıkıyor; metinle sayının karıştığı yeri bulup toplamı düzelt.
- Gevşek eşitlik tuzaklarını temizle: Bir indirim kodu kontrolü == yüzünden boş değerleri geçiriyor; karşılaştırmaları === ile yeniden yaz ve dene.
- Form verisini doğru türlere çevir: Bir kayıt formundan gelen yaş, adet ve onay değerlerini doğru türe çevirip NaN ve boş girişleri yakala.
- Kargo ücretini koşullarla hesapla: Mavikuş Kargo'nun ağırlık ve bölge kurallarına göre ücreti if/else ile hesaplayan kodu yaz.
- Sonsuz döngüyü durdur: Stok sayan bir while döngüsü tarayıcıyı donduruyor; çıkış koşulundaki hatayı bul ve düzelt.
- Vardiya çizelgesini döngülerle üret: Yedi gün ve dört çalışan için iç içe döngülerle adil bir vardiya çizelgesi üretip tabloya yazdır.
- Sipariş özetini şablon metinle yaz: Ad, ürün ve tutarı birleştiren karışık + zincirini okunur bir şablon metne çevir.
- Telefon numaralarını tek biçime getir: Farklı biçimlerde girilmiş müşteri telefonlarını string yöntemleriyle tek bir biçime dönüştür.
- Teslim tarihine kalan günü hesapla: Date nesnesiyle hafta sonlarını atlayarak bir siparişin tahmini teslim tarihini ve kalan gün sayısını bul.
- Tekrarlanan kodu fonksiyona taşı: Üç yerde kopyalanmış KDV hesabını parametreli tek bir fonksiyona dönüştür.
- Hoisting kaynaklı undefined hatasını çöz: Tanımlanmadan önce kullanılan bir değişken yüzünden undefined dönen fiyat hesabını düzelt.
- Sayaçları kapsamla birbirinden ayır: Aynı global değişkeni paylaşan iki tıklama sayacını kapsam kullanarak birbirinden bağımsız hale getir.
- Ürün listesinden nesne dizisi kur: Düz metin olarak verilmiş beş ürünü ad, fiyat ve stok alanlı nesnelere çevirip bir diziye koy.
- İç içe veriyi yapı bozumla aç: Bir müşteri kaydındaki adres ve son sipariş bilgisini yapı bozum ve varsayılan değerlerle tek satırda çıkar.
- Ayarları yanlışlıkla değiştirme: Kopyalandığı sanılan bir ayar nesnesi orijinali de değiştiriyor; spread ile güvenli kopya ve birleştirme yap.
- Butona tıklayınca açıklamayı genişlet: Defne Kitabevi sayfasında "Devamını oku" butonuna basılınca kitap açıklamasını genişleten kodu yaz.
- Adet sayacını klavyeyle yönet: Olay nesnesindeki tuş bilgisini kullanarak ok tuşlarıyla artıp azalan bir adet sayacı yap.
- Hatalı girişte sayfayı çökertme: JSON yapıştırılan bir alan hatalı veride tüm sayfayı durduruyor; try/catch ile hatayı yakalayıp kullanıcıya göster.
Kurs hakkında
Değişkenler, fonksiyonlar, diziler ve nesneler.
Ne öğreneceksin
- Dilin temelleri
- Fonksiyonlar ve veri
- Sayfayla konuşmak
Ön koşullar
Ön bilgi gerekmez; kurs sıfırdan başlar.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux masaüstünde geçer; araçlar pencereli arayüzleriyle hazırdır. Kurulum gerekmez, bilgisayar ekranı önerilir.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs başlangıç düzeyindedir; her terim ilk geçtiği yerde açıklanır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.