W Chrome 72 dodaliśmy obsługę:
- Tworzenie publicznych pól klasy w JavaScript jest teraz znacznie czystsze.
- Możesz sprawdzić, czy strona została aktywowana za pomocą nowego interfejsu API aktywacji użytkownika.
- Lokalizacja list staje się znacznie łatwiejsza dzięki interfejsowi API
Intl.format()
.
I wiele innych.
Mam na imię Pete LePage. Zobacz, co nowego w Chrome 72 dla deweloperów.
Historia zmian
To tylko niektóre z najważniejszych zmian. Aby poznać więcej szczegółów, kliknij linki poniżej.
- Lista zmian w repozytorium kodu Chromium
- Aktualizacje na ChromeStatus.com w przypadku Chrome 72
- Wycofanie i usunięcie funkcji w Chrome 72
Pola klasy publicznej
Moim pierwszym językiem programowania była Java, a nauczenie się JavaScriptu było dla mnie sporym wyzwaniem. Jak utworzyć zajęcia? A może dziedziczenie? A właściwości i metody publiczne i prywatne? Wiele ostatnich aktualizacji JavaScript, które znacznie ułatwiają programowanie obiektowe.
Teraz mogę tworzyć klasy, które działają tak, jak tego oczekuję, z konstruktorami, metodami getter i setter, metodami statycznymi oraz publicznymi właściwościami.
Dzięki wersji 8 7.2, która jest częścią Chrome 72, możesz teraz deklarować pola klas publicznych bezpośrednio w definicji klasy, eliminując potrzebę wykonywania tego działania w konstruktorze.
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
Pracujemy nad obsługą pól zajęć prywatnych.
Więcej informacji na ten temat znajdziesz w artykule Mathiasa o polach klasy.
User Activation API
Pamiętasz, że strony mogły automatycznie odtwarzać dźwięk zaraz po załadowaniu? Musisz szybko nacisnąć klawisz wyciszenia lub zorientować się, która karta była aktywna, i ją zamknąć. Dlatego niektóre interfejsy API wymagają aktywacji przez użytkownika, zanim zaczną działać. Niestety przeglądarki obsługują aktywację na różne sposoby.
Chrome 72 wprowadza aktywację użytkowników w wersji 2, która upraszcza aktywację użytkowników we wszystkich blokowanych interfejsach API. Jest ono oparte na nowej specyfikacji, której celem jest ujednolicenie sposobu aktywacji we wszystkich przeglądarkach.
W obiekcie navigator
i MessageEvent
pojawiła się nowa właściwość userActivation
, która ma 2 usługi: hasBeenActive
i isActive
:
hasBeenActive
wskazuje, czy powiązane okno było kiedykolwiek aktywowane przez użytkownika.isActive
wskazuje, czy powiązane okno ma obecnie aktywację użytkownika w swoim cyklu życia.
Więcej informacji znajdziesz w artykule Ujednolicenie aktywacji użytkowników w różnych interfejsach API.
Lokalizacja listy rzeczy z Intl.format
Uwielbiam interfejsy API Intl
, są bardzo pomocne w lokalizowaniu treści na inne języki. W Chrome 72 pojawiła się nowa metoda .format()
, która ułatwia renderowanie list. Podobnie jak inne interfejsy API Intl
przenosi ono obciążenie na silnik JavaScript, nie wpływając na wydajność.
Inicjalizować go z wybranym ustawieniem języka, a potem wywołać funkcję format
. Użyje ona prawidłowej składni i słów. Może używać spójników, które dodaje zlokalizowany odpowiednik i (i spójrz na te piękne przecinki oksfordzkie). Umożliwia rozróżnienie, dodając lokalny odpowiednik lub. Jeśli podasz kilka dodatkowych opcji, możesz zrobić jeszcze więcej.
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'
Więcej informacji znajdziesz w poście na temat interfejsu Intl.ListFormat API.
I inne funkcje
To tylko kilka z wielu zmian w Chrome 72 dla deweloperów.
- Chrome 72 zmienia działanie funkcji
Cache.addAll()
, aby lepiej odpowiadało specyfikacji. Wcześniej, jeśli w tym samym wywołaniu były zduplikowane wpisy, późniejsze żądania po prostu nadpisywały pierwsze. Aby spełnić wymagania specyfikacji, jeśli występują zduplikowane wpisy, zostanie wyświetlony komunikat o odrzuceniu z kodem błęduInvalidStateError
. - Żądania dotyczące ikon witryn są teraz obsługiwane przez usługę wtyczki, o ile adres URL żądania znajduje się w tym samym źródle co usługa wtyczki.
Subskrybuj
Jeśli chcesz być na bieżąco z naszych filmów, zasubskrybuj nasz kanał w YouTube dla deweloperów Chrome. Otrzymasz wtedy e-maila z powiadomieniem, gdy tylko opublikujemy nowy film.
Nazywam się Pete LePage i zaraz po wydaniu Chrome 73 opowiem Ci, co nowego w tej wersji przeglądarki.