Toptal'ın Hızlı ve Pratik JavaScript Hile Sayfası: ES6 ve Ötesi
Yayınlanan: 2022-03-11ECMAScript 6 (ES6), Web'in programlama dili olan JavaScript'in en son standart özelliğidir. HTML5 ve JavaScript'i sunucuda veya masaüstünde çalıştırmamıza izin veren çalışma zamanı olan Node.js'nin doğuşundan bu yana JavaScript benzersiz bir ivme kazandı. İşletmeler arasında giderek artan bir benimseme oranı, onu üretime dahil etti ve bu nedenle en yeni özellikleri büyük ölçüde bekleniyordu.
Bu hile sayfasını her gün kullandığımız ES6 özelliklerinin bir listesi olarak oluşturduk. Kapsamlı ama aynı zamanda özlü olmaya çalışan yeni API yöntemleri birbirinden ayrılıyor. İhtiyacı olanlar için, kendi başınıza hızlı bir arama yapın veya en son deneysel API'leri yakalamak için MDN belgelerini keşfetmeye çalışın. Ancak, zaman async
ve bir sonraki spesifikasyon taslağından (ES7) await
gibi en uç özelliklerden bazıları dahil edilmiştir. Bunun nedeni, çoğumuz geliştiricilerin en yeni JavaScript'ten yararlanmak için zaten Babel gibi bir aktarıcı kullanacak olmasıdır.
Bu komutla REPL düğümünü çalıştırarak bahsedilen ipuçlarından bazılarını test edebilirsiniz:
node --use-strict $(node --v8-options | grep harm | awk '{print $1}' | xargs) #ES6
Veya konsolunuzda Javascript'ten en iyi şekilde yararlanmak için doğrudan bir babel düğümü kullanın.
JavaScript ES6 Hile Sayfasını İndirmek İçin Buraya Tıklayın
JavaScript (ES6 ve Ötesi) Hile Sayfası
sabitler | let vs var | |
> sabit EULER = 2.7182818284 | > var ortalama = 5 | |
Uyarı! Dizi veya nesne ise, başvuru sabit tutulur . Sabit bir nesneye başvuruysa, içeriği yine de değiştirebilirsiniz, ancak değişkeni asla değiştiremezsiniz. | ||
> const SABİTLER = [] | Geçici Ölü Bölgelerin farkında olun : | |
> console.log(val) // -> 'tanımsız' | ||
Çünkü şuna eşittir: | ||
İkili, Sekizli ve Hex Notasyonu | > var val | |
> 0b1001011101 // 605 | ||
"let/const" ile bildirilen değişkenler kaldırılmaz: | ||
Yeni Türler | > konsol.log(val) | |
Semboller, Haritalar, Zayıf Haritalar ve Kümeler | ||
Ok İşlevi | Yeni Kapsamlı İşlevler | |
> setTimeout(() => { | > { | |
Anonim İşlevle Eşdeğer | Hemen Çağrılan İşlev İfadeleri (IIFE) ile Eşdeğer | |
> setTimeout(işlev () { | > (işlev () { | |
Nesne Gösterimi Yenilikleri | Şablon Değişmezleri Sayesinde Dize İnterpolasyonu | |
// Hesaplanan özellikler // Nesne değişmezleri // İle aynı } | > const adı = 'Kaplan' // Yeni satırları koruyabiliriz… | |
![]() | Varsayılan Parametreler | |
> howAreYou işlevi (cevap = 'tamam') { | ||
vaatler | Sınıflar, Kalıtım, Ayarlayıcılar, Alıcılar | |
yeni Söz ((çöz, reddet) => { | class Dikdörtgen, Şekil {'i genişletir | |
Dizileri Yok Etme | Nesneleri İmha Etme | |
> [a, b, c, d] = [1, 2, 3, 4] olsun; | > izin ver luke = { meslek: 'jedi', | |
Yayılma Operatörü | ...Patron Gibi Yıkım | |
// Dizileri virgülle ayrılmış hale getirin | > const [ kedi, köpek, ...balık ] = [ | |
Veya Daha İyi Bir İtiş Yapın | ...Ve Gelecekte Yıkım ES7 | |
> dizi = [1, 2, 3] olsun | {a, b, ...dinlenme} = {a:1, b:2, c:3, d:4} | |
zaman uyumsuz ES7 | ES7'yi bekleyin | |
zaman uyumsuz işlev schrodinger () { | denemek { | |
ES7'yi dışa aktar | ES7'yi içe aktarma | |
dışa aktarma işlevi sumTwo (a, b) { | React'i 'tepkiden' içe aktar | |
jeneratörler | ||
Bir yineleme protokolü uygulayan bir nesne döndürürler. yani, { value: < some value>, done: <true or false> } döndüren bir next() yöntemine sahiptir . | ||
function* incRand (max) { // Yıldız işareti bunu bir jeneratör olarak tanımlar | ||
> var rng = incRand(2) // Bir üreteç nesnesi döndürür |