Google Chrome 99今日發布引入改進後的PWA和熱議中的JS變化
Google Chrome 98在一個月前發布,由於穩定版發布通道的更新頻率最近轉為四周一次,現在是Chrome 99發布的時候了。在這個版本中並沒有出現大量的新功能,但考慮到Google已經非常接近Chrome 100的里程碑,這也是合理的。
Chrome 99將改變JavaScript(JS)adoptedStyleSheets規範的實現。這之前使用的是FrozenArray支持陣列,但現在將利用ObservableArray。新的方法將使突變JS數組變得更加容易。雖然這看上去都是相當技術性的,但對我們的讀者來說,可以說算得上有趣的是,自2018年以來,微軟、Mozilla、蘋果和Google之間一直在爭論這一規範的變化。
按照目前的情況,Google將在Chrome 99中繼續推進實施,因為它得到了Mozilla和微軟的支持。另一方面,蘋果的WebKit團隊拒絕支持實施上的改變,理由是沒有值得這麼做的好處。Google表示,它將繼續確保向後兼容以前的實現方式,但是以相當失望的口吻回應的。儘管網絡組件社區的其他成員普遍同意,並且得到了開發者社區的支持,但WebKit仍然對這一功能的實用性持懷疑態度。因此,互操作的風險主要是WebKit決定不實現這個功能。
最新版本的Chrome瀏覽器還整合了一個新的手寫識別API,網絡開發者可以利用它來提供墨跡功能,例如,在筆記類網絡應用中。他們將不需要依靠第三方的整合。
談到網絡應用,Chrome 99將允許已安裝的漸進式網絡應用程序(PWA)在屏幕上覆蓋更多區域,以便它們看起來更像本地應用而不是網絡應用。
在CSS方面,calc()數學函數現在的功能更接近於官方規範。CSS級聯層應該會讓開發者更容易管理網絡組件中的層。同樣,”-webkit-standard”字體家族值被移除,以提高與Firefox的互操作性,開發者可以明確地使用”-webkit-body”來代替。如果你正在使用CSS進行文本格式化,可以在這裡查看Chrome 99支持的新屬性。
Canvas 2D API正在加速現代化,以達到與其他2D API相同的功能,利用現有的CSS屬性,並提高性能。該API主要用於遊戲和”全功能應用”。同樣,Gamepad API也在增強,以符合標準規範。
Google還提供了一個新的文件系統訪問API,如果你是一個使用Origin私有文件系統的開發者,它將提供對文件的高性能和就地寫訪問。蘋果的WebKit團隊也正在實現這個功能。
還有其他一些面向開發者的功能,如ShadowDOM中的自動填充,HTML輸入元素的編程選擇器,Intl Enumeration和Intl Locale Info API的引入,以及PaintWorklet的新目標。但這還不是全部,因為Chrome 99 DevTools中也有很多新功能,你可以在這裡查看所有的細節。
http://developer.chrome.com/blog/new-in-devtools-99/
Chrome 99將在今天晚些時候開始推出。如果你在一天中沒有自動更新到99版,請前往幫助>關於Google瀏覽器,一旦有了更新,就觸發更新。接下來是Chrome 100,它將於3月3日進入Beta通道,並將於3月29日登陸穩定版,因為眾所周知的UA發生了位數的變化,希望它不會出亂子。