Yararlı bir JavaScript sorusu, ezberlenmiş bir cümleyi ödüllendirmek yerine zihinsel modeli ortaya çıkarmalıdır. Ne olduğunu, neden olduğunu ve bunu nasıl doğrulayacağınızı açıklamak için bu soru gruplarıyla pratik yapın.

01

Dil Davranışı

  • lexical kapsamı ve kapsamı zinciri bir kapatmayı nasıl etkiler?
  • `this` ne zaman çağrı noktasına bağlıdır, ne zaman değildir?
  • Örtük tür dönüşümü hangi pratik hatalara yol açabilir?
  • Prototipler delegasyonu nasıl destekliyor?
  • Bir modül birden fazla kez değerlendirilince hangi değişiklikler?
  • Mülkiyet tanımlayıcıları bir API'yi nasıl etkiler?
  • Bir sembolü ne zaman yararlı olur?
  • Ne kadar sığ ve derin kopyalar farklı?
  • Farklı eşitlik operasyonları altında iki değer ne yapar?
  • Zamanlı ölü bölgeleri nasıl açıklayacaksınız?
02

Async JavaScript ve tarayıcı

  • Bir görev ve kuyruktaki mikro görevleri içeren bir olay döngüsü turunu açıklayın.
  • Bir UI, artık ilgili olmayan bir istek iptal etmelidir?
  • İşlenmemiş bir Promise reddine ne sebep olur?
  • Bir grup istek için eşzamanlılığı nasıl sınırlandırırsınız?
  • İki çağıran, devam eden tek bir isteği nasıl paylaşabilir?
  • `Promise.allSettled` ne zaman `Promise.all`'dan daha kullanışlıdır?
  • Eski yanıtların güncel verilerin yerini almasını nasıl önlersiniz?
  • Yükleyici reddedilenden sonra önbellek girişi ne olmalıdır?
  • Zamanlayıcılar etkin olmayan bir sekmede nasıl davranır?
  • Bir ön uç sisteminde sırt basıncı nerede görünebilir?
03

Uygulama ve doğrulama

  • İptal desteği olan bir debounce işlevi uygulayın.
  • throttle'ı uygulayın ve lider ve yönlendirme davranışını açıklayın.
  • Abonelikten çıkma desteği olan bir olay yayıcı oluşturun.
  • TTL kullanan ve devam eden aynı istekleri birleştiren bir istek önbelleği oluşturun.
  • Girdiyi değiştirmeden iç içe verileri düzleştirin.
  • Açık bir durdurma politikası ile yeniden bir deneme yardımını yazın.
  • Eşzamanlılık sınırı olan küçük bir görev zamanlayıcısı uygulayın.
  • Normalize sunucu verileri bir varlık haritasına dönüştürür.
  • Memoizasyon için yardımcı bir fonksiyon oluşturun ve önbellek sonuçlarını geçersiz kılma sınırlarını açıklayın.
  • Zamana bağlı bir işlev için tasarım testleri.
04

Senior- level tartışma

  • Tür denetimli bir frontend’de çalışma zamanı doğrulaması nerede yapılmalıdır?
  • Bu API’yi kullanan kodu bozmadan paylaşılan bir istemci API’sini nasıl geliştirirsiniz?
  • Bir istek katmanında gözlemlenebilir ne olmalıdır?
  • Üretimde uzun bir görev nasıl araştırırsınız?
  • Bir web çalışanı haklı olduğunda?
  • Limitler runtime davranışını nasıl etkiler?
  • Hata durumunda kontrollü işlev azaltmayı nasıl tasarlarsınız?
  • Hangi güvenlik varsayımları sadece müşteri kodunda yaşamamalıdır?
  • Gizli bağlam olmadan tutarlı bir hata nasıl yapıyorsunuz?
  • Hangi tarayıcı kısıtlamaları mimarinizi değiştirir?
05

Soruları nasıl uygulayacağız

  • Üç adımda yanıtlayın: mekanizma, somut örnek ve ödünleşim.
  • Sadece sözleşmeyi ve önemli kenar davalarını belirtmeden sonra kod yazın.
  • Bir başarı durumunu, bir sınır davası ve bir başarısızlık yolunu onaylayın.
  • Daha uzun senaryoları ezberlemek yerine pratik konular olarak zayıf açıklamalar yapın.
  • Kararınızı hangi kanıtların değiştireceğini isimlendirerek bitirin.
Referanslar Referanslar

birincil kaynaklar

Yayın incelemesi
Ürün iddiaları mevcut deneyime karşı kontrol edildi. Bir sorun buldunuz mu? Bir düzeltme gönderin.