Neu in Chrome 72

Chrome 72 bietet Unterstützung für:

Das sind noch reichlich mehr!

Mein Name ist Pete LePage. Sehen wir uns an, was es für Entwickler in Chrome 72 Neues gibt.

Änderungsprotokoll

Hier werden nur einige der wichtigsten Highlights vorgestellt. Weitere Änderungen in Chrome 72 findest du unter den folgenden Links.

Öffentliche Klassenfelder

Meine Muttersprache war Java und das Erlernen von JavaScript war eine kleine Schleife. Wie habe ich einen Kurs erstellt? Oder eine Vererbung? Was ist mit öffentlichen und privaten Eigenschaften und Methoden? Viele der jüngsten JavaScript-Updates, die die objektorientierte Programmierung vereinfachen.

Jetzt kann ich Klassen erstellen, die so funktionieren, wie sie es erwarten, komplett mit Konstruktoren, Gettern und Settern, statischen Methoden und öffentlichen Eigenschaften.

Dank V8 7.2, das im Lieferumfang von Chrome 72 enthalten ist, können Sie Felder öffentlicher Klassen jetzt direkt in der Klassendefinition deklarieren, sodass dies nicht mehr im Konstruktor erfolgen muss.

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

Wir arbeiten daran, auch Felder für Privatkurse zu unterstützen.

Weitere Einzelheiten finden Sie im Artikel zu Klassenfeldern von Mathias.

Nutzeraktivierungs-API

Erinnern Sie sich noch daran, wann Websites beim Laden der Seite automatisch Ton abspielen konnten? Du musst die Stummschaltung drücken oder herausfinden, um welchen Tab es sich handelt, und ihn schließen. Aus diesem Grund müssen einige APIs über eine Nutzergeste aktiviert werden, bevor sie funktionieren. Leider führen Browser die Aktivierung auf unterschiedliche Weise durch.

API zur Nutzeraktivierung vor und nach der Interaktion des Nutzers mit der Seite.

In Chrome 72 wird die Nutzeraktivierung v2 eingeführt, die die Nutzeraktivierung für alle gesteuerten APIs vereinfacht. Diese basiert auf einer neuen Spezifikation, mit der die Aktivierung in allen Browsern standardisiert werden soll.

Es gibt sowohl für navigator als auch für MessageEvent eine neue userActivation-Property mit zwei Properties: hasBeenActive und isActive:

  • hasBeenActive gibt an, ob im zugehörigen Lebenszyklus schon einmal eine Nutzeraktivierung stattgefunden hat.
  • isActive gibt an, ob für das verknüpfte Fenster im Lebenszyklus derzeit eine Nutzeraktivierung vorliegt.

Weitere Informationen finden Sie unter Nutzeraktivierung in allen APIs einheitlich gestalten.

Listen von Dingen werden mit Intl.format lokalisiert

Ich liebe die Intl APIs. Sie sind sehr hilfreich bei der Lokalisierung von Inhalten in andere Sprachen. In Chrome 72 gibt es eine neue .format()-Methode, die das Rendern von Listen vereinfacht. Wie bei anderen Intl-APIs wird die JavaScript-Engine ohne Leistungseinbußen belastet.

Initialisieren Sie sie mit der gewünschten Sprache und rufen Sie dann format auf. Es werden dann die richtigen Wörter und die richtige Syntax verwendet. Sie kann Konjunktionen verwenden, wodurch das lokalisierte Äquivalent von and hinzugefügt wird (und sich die schönen Oxford-Kommaten ansehen). Er kann Disjunktionen ausführen und das lokale Äquivalent von or hinzufügen. Durch einige zusätzliche Optionen können Sie sogar noch mehr erreichen.

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'

Weitere Informationen finden Sie im Beitrag zur Intl.ListFormat API.

…und vieles mehr

Dies sind nur einige der Änderungen in Chrome 72 für Entwickler. Und natürlich gibt es noch viel mehr.

  • In Chrome 72 wird das Verhalten von Cache.addAll() an die Spezifikation angepasst. Wenn in demselben Aufruf doppelte Einträge enthalten waren, wurde bei späteren Anfragen einfach die erste überschrieben. Um der Spezifikation zu entsprechen, werden doppelte Einträge mit einem InvalidStateError abgelehnt.
  • Favicons-Anfragen werden jetzt vom Service Worker verarbeitet, sofern sich die Anfrage-URL am selben Ursprung befindet wie der Service Worker.

Abonnieren

Wenn Sie über unsere Videos auf dem Laufenden bleiben möchten, abonnieren Sie unseren YouTube-Kanal für Chrome-Entwickler. Sie werden per E-Mail benachrichtigt, wenn wir ein neues Video veröffentlichen.

Ich bin Pete LePage. Sobald Chrome 73 veröffentlicht wird, melde ich Ihnen, was es Neues in Chrome gibt.