Novità di Chrome 72

In Chrome 72 abbiamo aggiunto il supporto per:

E c'è molto altro.

Sono Pete LePage. Andiamo a scoprire le novità per gli sviluppatori in Chrome 72.

Log delle modifiche

Questa pagina illustra solo alcuni dei punti salienti. Per altre modifiche in Chrome 72, consulta i link di seguito.

Campi della classe pubblica

La mia prima lingua è stata Java e l'apprendimento di JavaScript mi ha un po' disorientato. Come faccio a creare un corso? O l'ereditarietà? Che dire di proprietà e metodi pubblici e privati? Molti degli aggiornamenti recenti di JavaScript che semplificano molto la programmazione orientata agli oggetti.

Ora posso creare classi che funzionano come mi aspetto, complete di costruttori, getter e setter, metodi statici e proprietà pubbliche.

Grazie a V8 7.2, in dotazione con Chrome 72, ora puoi dichiarare i campi della classe pubblica direttamente nella definizione della classe, eliminando la necessità di farlo nel costruttore.

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

Il supporto dei campi dei corsi privati è in fase di sviluppo.

Per ulteriori informazioni, consulta l'articolo di Mathias sui campi di classe.

API User Activation

Ricordi quando i siti potevano riprodurre automaticamente l'audio non appena la pagina veniva caricata? Cerchi di premere il tasto di disattivazione dell'audio o di capire quale scheda era e di chiuderla. Ecco perché alcune API richiedono l'attivazione tramite un gesto dell'utente prima di poter funzionare. Purtroppo, i browser gestiscono l'attivazione in modi diversi.

API di attivazione utente prima e dopo che l'utente ha interagito con la pagina.

Chrome 72 introduce la versione 2 dell'attivazione utente, che semplifica l'attivazione utente per tutte le API con limitazioni. Si basa su una nuova specifica che mira a standardizzare il funzionamento dell'attivazione su tutti i browser.

Esiste una nuova proprietà userActivation sia in navigator che in MessageEvent, con due proprietà: hasBeenActive e isActive:

  • hasBeenActive indica se la finestra associata ha mai registrato un'attivazione dell'utente nel suo ciclo di vita.
  • isActive indica se la finestra associata ha attualmente un'attivazione dell'utente nel suo ciclo di vita.

Per ulteriori dettagli, consulta Rendere coerente l'attivazione degli utenti tra le API

Localizzazione di elenchi di cose con Intl.format

Adoro le API Intl, sono molto utili per localizzare i contenuti in altre lingue. In Chrome 72 è disponibile un nuovo metodo .format() che semplifica il rendering degli elenchi. Come altre API Intl, trasferisce il carico al motore JavaScript, senza sacrificare le prestazioni.

Inizializzalo con le impostazioni internazionali che preferisci, quindi chiama format e verranno utilizzate le parole e la sintassi corrette. Può usare le congiunzioni, che aggiungono l'equivalente localizzato di e (e guarda queste bellissime virgole oxford). Può eseguire disgiunzioni, aggiungendo l'equivalente locale di o. Fornendo alcune opzioni aggiuntive, puoi fare ancora di più.

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'

Per ulteriori dettagli, consulta il post sull'API Intl.ListFormat.

E tanto altro.

Queste sono solo alcune delle modifiche in Chrome 72 per gli sviluppatori, ma ce ne sono molte altre.

  • Chrome 72 modifica il comportamento di Cache.addAll() per adattarlo meglio alle specifiche. In precedenza, se erano presenti voci duplicate nella stessa chiamata, le richieste successive sovrascrivevano semplicemente la prima. Per soddisfare le specifiche, se sono presenti voci duplicate, il valore verrà rifiutato con un InvalidStateError.
  • Le richieste di favicon ora vengono gestite dal service worker, a condizione che l'URL della richiesta si trovi nella stessa origine del service worker.

Iscriviti

Se vuoi rimanere al passo con i nostri video, iscriviti al nostro canale YouTube per sviluppatori di Chrome e riceverai una notifica via email ogni volta che lanceremo un nuovo video.

Sono Pete LePage e, non appena verrà rilasciato Chrome 73, sarò qui per raccontarti le novità di Chrome.