Dazu sollten Sie Folgendes wissen:
WebTransport
ist eine neue Option zum Senden von Echtzeitnachrichten zwischen dem Client und dem Server.- Mit der Funktionserkennung können Sie herausfinden, welche Skripttypen ein Browser unterstützt.
- Das Durchsuchen von Arrays am Ende wird etwas einfacher.
- Und es gibt viele weitere.
Frohes neues Jahr! Mein Name ist Pete LePage. Jetzt sehen wir uns an, was es bei Chrome 97 Neues für Entwickler gibt.
Web-Transport
Wenn Sie WebSockets oder die WebRTC Data Channel API verwenden, um Nachrichten zwischen Ihrem Server und der Seite zu senden, gibt es eine neue Option für Sie. WebTransport
ist eine neue API, die bidirektionales Client-Server-Messaging mit niedriger Latenz bietet.
Sie hat eine geringere Latenz als WebSockets und im Gegensatz zur RTC Data Channel API, die für Peer-to-Peer-Messaging entwickelt wurde, wurde die Web Transport API speziell für Client-Server-Messaging entwickelt.
Sie unterstützt das zuverlässige Senden von Daten mit den Stream-APIs und das unzuverlässige mit den Datagram APIs. Es wird von Web Workern unterstützt. Und da es eine Stream-kompatible Schnittstelle bereitstellt, unterstützt es Optimierungen im Hinblick auf einen Gegendruck.
Für die Verwendung benötigen Sie einen Server, der HTTP/3 unterstützt. Dies ist in der Regel einfacher als die Einrichtung und Wartung eines WebRTC-Servers. Öffnen Sie eine neue WebTransport
-Instanz, warten Sie, bis die Verbindung hergestellt wurde und Sie mit dem Senden von Daten beginnen können.
const url = 'https://example.com:4999/foo/bar';
const transport = new WebTransport(url);
await transport.ready;
const writer = transport.datagrams.writable.getWriter();
const data1 = new Uint8Array([65, 66, 67]);
writer.write(data1);
Weitere Informationen finden Sie im Artikel Experimenting with WebTransport auf web.dev.
Skripttyp-Featureerkennung
Heute lässt sich mit dem Attribut nomodule
ermitteln, ob JavaScript-Module im Browser unterstützt werden. Es gibt jedoch mehrere neue Funktionsvorschläge in der Pipeline, z. B. Importkarten, Spekulationsregeln und das Vorabladen von Bundles. Wir müssen herausfinden, was ein Browser unterstützt.
Geben Sie HTMLScriptElement.supports()
ein. Sie können damit ermitteln, welche Skripttypen Sie verwenden können, und dem Browser die beste Option senden.
if (HTMLScriptElement.supports('importmap')) {
// Use <script type="importmap" ...>
} else if (HTMLScriptElement.supports('module')) {
// Use <script type="module" ...>
} else {
// Use classic method...
}
Neue Array-Prototypen
Ich liebe es, wenn JavaScript einfacher wird. Array
und TypedArray
unterstützen jetzt die statischen Methoden findLast()
und findLastIndex()
.
Diese Funktionen sind im Grunde die gleichen wie find()
und findIndex()
, aber die Suche erfolgt am Ende eines Arrays statt am Anfang.
Um beispielsweise die letzte Zahl in einem Array zu finden, die größer als zehn ist, rufen Sie findLast()
mit einer Testfunktion auf, die prüft, ob der Wert größer als zehn ist. Dann können Sie loslegen.
const array1 = [5, 12, 8, 130, 44, 3, 6];
function greaterThanTen(val) {
return val > 10;
}
const last = array1.findLast(greaterThanTen);
// 44
const lIdx = array1.findLastIndex(greaterThanTen);
// 4
Chrome 100 im UA-String emulieren
In wenigen Monaten gibt es Chrome 100, eine dreistellige Versionsnummer. Jeder Code, der Versionsnummern überprüft oder den UA-String parst, sollte überprüft werden, um sicherzustellen, dass er drei Ziffern verarbeiten kann.
Das Flag #force-major-version-to-100
ändert die aktuelle Versionsnummer in 100, damit alles wie erwartet funktioniert.
…und vieles mehr
Natürlich gibt es noch viel mehr.
Neue Zeilen in Formulareinträgen werden jetzt auf die gleiche Weise wie bei Gecko und WebKit normalisiert, wodurch die Interoperabilität zwischen Browsern verbessert wird.
Wir standardisieren die Namen von Clienthinweisen mit dem Präfix sec-ch
.
Aus dpr
wird beispielsweise sec-ch-dpr
. Vorhandene Versionen dieser Hinweise werden weiterhin unterstützt, Sie sollten sich jedoch darauf vorbereiten, dass sie eingestellt oder entfernt werden.
Geschlossene <details>
-Elemente sind jetzt suchbar und können verknüpft werden. Diese ausgeblendeten Elemente werden automatisch maximiert, wenn „Auf Seite suchen“, ScrollToTextFragment
und die Elementfragment-Navigation verwendet werden.
Weitere Informationen
Dies sind nur einige der wichtigsten Punkte. Unter den folgenden Links finden Sie weitere Änderungen in Chrome 97.
- Neu in den Chrome-Entwicklertools (97)
- Einstellung und Entfernung von Chrome 97
- ChromeStatus.com-Updates für Chrome 97
- Neuerungen in JavaScript in Chrome 97
- Änderungsliste des Chromium-Quell-Repositorys
- Release-Kalender für Chrome
Abo
Abonnieren Sie den YouTube-Kanal für Chrome-Entwickler, um auf dem Laufenden zu bleiben. Dann werden Sie per E-Mail benachrichtigt, wenn wir ein neues Video veröffentlichen.
Ich bin Pete LePage. Sobald Chrome 98 veröffentlicht wird, melde ich Ihnen, was es bei Chrome Neues gibt.