Nieuw in Chrome 72

In Chrome 72 hebben we ondersteuning toegevoegd voor:

En er is nog veel meer !

Ik ben Pete LePage . Laten we erin duiken en kijken wat er nieuw is voor ontwikkelaars in Chrome 72!

Wijzig logboek

Dit behandelt slechts enkele van de belangrijkste hoogtepunten. Bekijk de onderstaande links voor aanvullende wijzigingen in Chrome 72.

Openbare klassevelden

Mijn eerste taal was Java, en het leren van JavaScript bracht me een beetje in verwarring. Hoe heb ik een klas gemaakt? Of erfenis? Hoe zit het met publieke en private eigendommen en methoden? Veel van de recente updates van JavaScript die objectgeoriënteerd programmeren veel eenvoudiger maken.

Ik kan nu klassen maken die werken zoals ik verwacht, compleet met constructors, getters en setters, statische methoden en openbare eigenschappen.

Dankzij V8 7.2, dat wordt meegeleverd met Chrome 72, kunt u nu openbare klassenvelden rechtstreeks in de klassendefinitie declareren, waardoor u dit niet meer in de constructor hoeft te doen.

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

Ondersteuning voor privélesvelden is in de maak!

Meer details vindt u in het artikel van Mathias over klassenvelden voor meer details.

Gebruikersactiverings-API

Weet je nog dat sites automatisch geluid konden afspelen zodra de pagina werd geladen? Je haast je om op de mute-toets te drukken, of erachter te komen welk tabblad het was, en sluit het. Daarom vereisen sommige API's activering via een gebruikersgebaar voordat ze kunnen werken. Helaas verwerken browsers de activering op verschillende manieren.

Gebruikersactiverings-API voor en nadat de gebruiker interactie heeft gehad met de pagina.

Chrome 72 introduceert User Activation v2, wat de gebruikersactivatie voor alle gated API's vereenvoudigt. Het is gebaseerd op een nieuwe specificatie die tot doel heeft te standaardiseren hoe activering in alle browsers werkt.

Er is een nieuwe eigenschap userActivation op zowel navigator als MessageEvent , die twee eigenschappen heeft: hasBeenActive en isActive :

  • hasBeenActive geeft aan of het bijbehorende venster ooit een gebruikersactivatie heeft gezien in zijn levenscyclus.
  • isActive geeft aan of het bijbehorende venster momenteel een gebruikersactivatie in zijn levenscyclus heeft.

Meer details vindt u in Gebruikersactivatie consistent maken tussen API's

Lijsten met dingen lokaliseren met Intl.format

Ik ben dol op de Intl API's, ze zijn super handig voor het lokaliseren van inhoud in andere talen! In Chrome 72 is er een nieuwe .format() -methode die het weergeven van lijsten eenvoudiger maakt. Net als andere Intl API's verschuift het de last naar de JavaScript-engine, zonder dat dit ten koste gaat van de prestaties.

Initialiseer het met de gewenste landinstelling, roep vervolgens format aan en het gebruikt de juiste woorden en syntaxis. Het kan voegwoorden gebruiken - wat het gelokaliseerde equivalent van en toevoegt (en kijk eens naar die prachtige Oxford-komma's). Het kan disjuncties uitvoeren - het lokale equivalent van of toevoegen. En door enkele extra opties aan te bieden, kunt u nog meer doen.

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'

Bekijk de Intl.ListFormat API- post voor meer details!

En meer!

Dit zijn slechts enkele van de veranderingen in Chrome 72 voor ontwikkelaars. Er is natuurlijk nog veel meer.

  • Chrome 72 verandert het gedrag van Cache.addAll() zodat het beter aansluit bij de specificaties. Als er voorheen dubbele vermeldingen in dezelfde oproep waren, overschreven latere verzoeken eenvoudigweg de eerste. Om aan de specificaties te voldoen: als er dubbele vermeldingen zijn, wordt deze afgewezen met een InvalidStateError .
  • Aanvragen voor favicons worden nu afgehandeld door de servicemedewerker, zolang de aanvraag-URL dezelfde oorsprong heeft als de servicemedewerker.

Abonneren

Wil je op de hoogte blijven van onze video's, abonneer je dan op ons Chrome Developers YouTube-kanaal en je ontvangt een e-mailmelding wanneer we een nieuwe video lanceren.

Ik ben Pete LePage, en zodra Chrome 73 uitkomt, ben ik hier om je te vertellen: wat er nieuw is in Chrome!