Chrome 72'deki yenilikler

Chrome 72'de aşağıdaki özellikler için destek ekledik:

Daha birçok özellik de var.

Adım Pete LePage. Chrome 72'de geliştiriciler için neler yeni olduğuna göz atalım.

Değişiklik günlüğü

Bu makalede, öne çıkan özelliklerden yalnızca bazıları ele alınmıştır. Chrome 72'deki diğer değişiklikler için aşağıdaki bağlantılara göz atın.

Herkese açık sınıf alanları

İlk dilim Javaydı ve JavaScript öğrenmek beni biraz başa çıkmaya itti. Nasıl sınıf oluşturabilirim? Yoksa miras mı? Herkese açık ve gizli mülkler ve yöntemler ne olacak? Nesne odaklı programlamayı çok daha kolaylaştıran JavaScript güncellemelerinin birçoğu.

Artık istediğim gibi çalışan sınıflar oluşturabiliyorum. Bu sınıflarda kurucular, alıcı ve ayarlayıcılar, statik yöntemler ve herkese açık özellikler bulunuyor.

Chrome 72 ile birlikte sunulan V8 7.2 sayesinde artık herkese açık sınıf alanlarını doğrudan sınıf tanımında tanımlayabilirsiniz. Böylece, bunu oluşturucuda yapma zorunluluğunu ortadan kaldırabilirsiniz.

class Counter {
  _value = 0;
  get value() {
    return this._value;
  }
  increment() {
    this._value++;
  }
}

const counter = new Counter();
console.log(counter.value);
// → 0
counter.increment();
console.log(counter.value);
// → 1

Özel sınıf alanları için destek çalışmaları devam ediyor.

Daha fazla bilgi için Mathias'ın sınıf alanları hakkındaki makalesine göz atın.

User Activation API

Sitelerin sayfa yüklendikten hemen sonra otomatik olarak ses çaldığı günleri hatırlıyor musunuz? Sesi kapatma tuşuna basmaya veya hangi sekme olduğunu bulup kapatmaya çalışırsınız. Bu nedenle, bazı API'lerin çalışması için kullanıcı hareketi aracılığıyla etkinleştirilmesi gerekir. Maalesef tarayıcılar etkinleştirmeyi farklı şekillerde ele alıyor.

Kullanıcı sayfayla etkileşime geçmeden önce ve sonra kullanıcı etkinleştirme API'si.

Chrome 72, tüm sınırlı API'ler için kullanıcı etkinleştirmeyi basitleştiren Kullanıcı Etkinleştirme v2'yi kullanıma sunar. Bu özellik, etkinleştirmenin tüm tarayıcılarda nasıl çalıştığını standartlaştırmayı amaçlayan yeni bir özelliğe dayanır.

Hem navigator hem de MessageEvent'de hasBeenActive ve isActive olmak üzere iki özelliği olan yeni bir userActivation mülkü vardır:

  • hasBeenActive, ilişkilendirilen pencerenin yaşam döngüsü boyunca hiç kullanıcı etkinleştirmesi görüp görmediğini belirtir.
  • isActive, ilişkilendirilmiş pencerede şu anda yaşam döngüsünde bir kullanıcı etkinleştirme işlemi olup olmadığını belirtir.

Daha fazla bilgi için Kullanıcı etkinleştirmesini API'ler arasında tutarlı hale getirme başlıklı makaleyi inceleyin.

Intl.format ile öğe listelerini yerelleştirme

Intl API'lerini seviyorum. İçeriği diğer dillere yerelleştirmek için çok faydalı. Chrome 72'de, listeleri oluşturmayı kolaylaştıran yeni bir .format() yöntemi vardır. Diğer Intl API'leri gibi, performanstan ödün vermeden yükü JavaScript motoruna aktarır.

İstediğiniz yerel ayarla başlatın, ardından format işlevini çağırın. Böylece doğru kelimeleri ve sözdizimini kullanır. Bağlaçları da kullanabilir. Bu sayede ve ifadesinin yerelleştirilmiş eşdeğerini ekleyebilirsiniz (ve bu güzel Oxford virgüllerine bakın). or operatörünün yerel eşdeğerini ekleyerek ayırma işlemleri yapabilir. Ayrıca bazı ek seçenekler sağlayarak daha fazlasını da yapabilirsiniz.

const opts = {type: 'disjunction'};
const lf = new Intl.ListFormat('fr', opts);
lf.format(['chien', 'chat', 'oiseau']);
// → 'chien, chat ou oiseau'
lf.format(['chien', 'chat', 'oiseau', 'lapin']);
// → 'chien, chat, oiseau ou lapin'

Daha fazla bilgi için Intl.ListFormat API konulu yayına göz atın.

Diğer özellikler

Bunlar, Chrome 72'de geliştiriciler için değişikliklerden sadece birkaçı. Elbette daha pek çok şey var.

  • Chrome 72, Cache.addAll() işlevinin davranışını spesifikasyonla daha iyi eşleşecek şekilde değiştirir. Daha önce, aynı çağrıda yinelenen girişler varsa sonraki istekler ilk isteğin üzerine yazardı. Spesifikasyonla eşleşmek için yinelenen girişler varsa InvalidStateError ile reddedilir.
  • Site simgesi istekleri, istek URL'si hizmet çalışanıyla aynı kaynakta olduğu sürece artık hizmet çalışanı tarafından işlenmektedir.

Abone ol

Videolarımızdan haberdar olmak için Chrome Developers YouTube kanalımıza abone olun. Yeni bir video yayınladığımızda e-posta bildirimi alırsınız.

Adım Pete LePage. Chrome 73 yayınlanır yayınlanmaz Chrome'daki yenilikleri size bildirmek için burada olacağım.