ืžื”ื“ื•ืจืช Firefox 78

ื“ืคื“ืคืŸ ืื™ื ื˜ืจื ื˜ ืฉื•ื—ืจืจ Firefox 78, ื›ืžื• ื’ื ื’ืจืกื” ืœื ื™ื™ื“ Firefox 68.10 ืขื‘ื•ืจ ืคืœื˜ืคื•ืจืžืช ืื ื“ืจื•ืื™ื“. ืžื”ื“ื•ืจืช Firefox 78 ืžืกื•ื•ื’ืช ื›ืฉื™ืจื•ืช ืชืžื™ื›ื” ืžื•ืจื—ื‘ (ESR), ืขื ืขื“ื›ื•ื ื™ื ืฉืคื•ืจืกืžื• ื‘ืžื”ืœืš ื”ืฉื ื”. ื‘ื ื•ืกืฃ, ืขื“ื›ื•ืŸ ืฉืœ ื”ืงื•ื“ื ืขื ืคื™ื ืชืžื™ื›ื” ืœื˜ื•ื•ื— ืืจื•ืš 68.10.0 (ืฆืคื•ื™ื™ื ืขื•ื“ ืฉื ื™ ืขื“ื›ื•ื ื™ื ื‘ืขืชื™ื“: 68.11 ื•-68.12). ื‘ืงืจื•ื‘ ืœื‘ืžื” ื’ื™ืจืกืช ื‘ื“ื™ืงื” ื ื™ืกื™ื•ื ื™ืช ืกื ื™ืฃ Firefox 79 ื™ืขื‘ื•ืจ ืžืขื‘ืจ, ืฉื—ืจื•ืจื• ืžืชื•ื›ื ืŸ ืœ-28 ื‘ื™ื•ืœื™.

ื”ืขื™ืงืจื™ ื—ื™ื“ื•ืฉื™ื:

  • ืขืžื•ื“ ื”ืกื™ื›ื•ื (Protections Dashboard) ื”ื•ืจื—ื‘ ื‘ื“ื™ื•ื•ื—ื™ื ืขืœ ื™ืขื™ืœื•ืช ืžื ื’ื ื•ื ื™ ื”ื”ื’ื ื” ืžืคื ื™ ืžืขืงื‘ ืื—ืจ ืชื ื•ืขื•ืช, ื‘ื“ื™ืงืช ืคื’ื™ืขื” ื‘ืื™ืฉื•ืจื™ื ื•ื ื™ื”ื•ืœ ืกื™ืกืžืื•ืช. ื”ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื” ืžืืคืฉืจืช ืœื”ืฆื™ื’ ื ืชื•ื ื™ื ืกื˜ื˜ื™ืกื˜ื™ื™ื ืขืœ ื”ืฉื™ืžื•ืฉ ื‘ืื™ืฉื•ืจื™ื ืฉื ืคื’ืขื•, ื•ื›ืŸ ืœืขืงื•ื‘ ืื—ืจ ืฆืžืชื™ื ืืคืฉืจื™ื™ื ืฉืœ ืกื™ืกืžืื•ืช ืฉืžื•ืจื•ืช ืขื ื“ืœื™ืคื•ืช ื™ื“ื•ืขื•ืช ืฉืœ ืžืกื“ื™ ื ืชื•ื ื™ื ืฉืœ ืžืฉืชืžืฉื™ื. ื”ืื™ืžื•ืช ืžืชื‘ืฆืข ื‘ืืžืฆืขื•ืช ืื™ื ื˜ื’ืจืฆื™ื” ืขื ื‘ืกื™ืก ื”ื ืชื•ื ื™ื ืฉืœ ืคืจื•ื™ืงื˜ haveibeenpwned.com, ื”ื›ื•ืœืœ ืžื™ื“ืข ืขืœ 9.7 ืžื™ืœื™ืืจื“ ื—ืฉื‘ื•ื ื•ืช ืฉื ื’ื ื‘ื• ื›ืชื•ืฆืื” ืžืคืจื™ืฆื” ืœ-456 ืืชืจื™ื. ื”ืชืงืฆื™ืจ ืžืกื•ืคืง ื‘ื“ืฃ "ืื•ื“ื•ืช:ื”ื’ื ื•ืช" ืื• ื“ืจืš ืชืคืจื™ื˜ ืฉื ืงืจื ืขืœ ื™ื“ื™ ืœื—ื™ืฆื” ืขืœ ืกืžืœ ื”ืžื’ืŸ ื‘ืฉื•ืจืช ื”ื›ืชื•ื‘ืช (ืœื•ื— ื”ืžื—ื•ื•ื ื™ื ืœื”ื’ื ื” ืžื•ืฆื’ ื›ืขืช ื‘ืžืงื•ื ื”ืฆื’ ื“ื•ื—).
    ืžื”ื“ื•ืจืช Firefox 78

  • ื ื•ืกืฃ ื›ืคืชื•ืจ ืœืžืกื™ืจืช ื”ื”ืชืงื ื”ืจืขื ืŸ ืืช Firefox", ื”ืžืืคืฉืจ ืœืš ืœืืคืก ื”ื’ื“ืจื•ืช ื•ืœื”ืกื™ืจ ืืช ื›ืœ ื”ืชื•ืกืคื•ืช ืžื‘ืœื™ ืœืื‘ื“ ื ืชื•ื ื™ื ืฉื ืฆื‘ืจื•. ื‘ืžืงืจื” ืฉืœ ื‘ืขื™ื•ืช, ืžืฉืชืžืฉื™ื ืœืขืชื™ื ืงืจื•ื‘ื•ืช ืžื ืกื™ื ืœืคืชื•ืจ ืื•ืชืŸ ืขืœ ื™ื“ื™ ื”ืชืงื ื” ืžื—ื“ืฉ ืฉืœ ื”ื“ืคื“ืคืŸ. ื›ืคืชื•ืจ ื”ืจืขื ื•ืŸ ื™ืืคืฉืจ ืœืš ืœื”ืฉื™ื’ ืืคืงื˜ ื“ื•ืžื” ืžื‘ืœื™ ืœืื‘ื“ ืกื™ืžื ื™ื•ืช, ื”ื™ืกื˜ื•ืจื™ื™ืช ื’ืœื™ืฉื”, ืกื™ืกืžืื•ืช ืฉืžื•ืจื•ืช, ืขื•ื’ื™ื•ืช, ืžื™ืœื•ื ื™ื ืžื—ื•ื‘ืจื™ื ื•ื ืชื•ื ื™ื ืœืžื™ืœื•ื™ ืื•ื˜ื•ืžื˜ื™ ืฉืœ ื˜ืคืกื™ื (ื›ืืฉืจ ืืชื” ืœื•ื—ืฅ ืขืœ ื”ื›ืคืชื•ืจ, ื ื•ืฆืจ ืคืจื•ืคื™ืœ ื—ื“ืฉ ื•ืžืกื“ื™ ื”ื ืชื•ื ื™ื ืฉืฆื•ื™ื ื• ืžื•ืขื‘ืจื™ื ืืœื™ื•). ืœืื—ืจ ืœื—ื™ืฆื” ืขืœ ืจืขื ื•ืŸ, ืชื•ืกืคื•ืช, ืขืจื›ื•ืช ื ื•ืฉื, ืžื™ื“ืข ืขืœ ื–ื›ื•ื™ื•ืช ื’ื™ืฉื”, ืžื ื•ืขื™ ื—ื™ืคื•ืฉ ืžื—ื•ื‘ืจื™ื, ืื—ืกื•ืŸ DOM ืžืงื•ืžื™, ืื™ืฉื•ืจื™ื, ื”ื’ื“ืจื•ืช ืฉื”ืฉืชื ื•, ืกื’ื ื•ื ื•ืช ืžืฉืชืžืฉ (userChrome, userContent) ื™ืื‘ื“ื•.
    ืžื”ื“ื•ืจืช Firefox 78

  • ื ื•ืกืคื• ืคืจื™ื˜ื™ื ืœืชืคืจื™ื˜ ื”ื”ืงืฉืจ ื”ืžื•ืฆื’ ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ื•ืช ื›ื“ื™ ืœืกื’ื•ืจ ื›ืจื˜ื™ืกื™ื•ืช ืžืจื•ื‘ื•ืช, ืœืกื’ื•ืจ ื›ืจื˜ื™ืกื™ื•ืช ืžื™ืžื™ืŸ ืœื–ื• ื”ื ื•ื›ื—ื™ืช ื•ืœืกื’ื•ืจ ืืช ื›ืœ ื”ื›ืจื˜ื™ืกื™ื•ืช ืžืœื‘ื“ ื–ื• ื”ื ื•ื›ื—ื™ืช.

    ืžื”ื“ื•ืจืช Firefox 78

  • ื ื™ืชืŸ ืœื”ืฉื‘ื™ืช ืืช ืฉื•ืžืจ ื”ืžืกืš ื‘ืžื”ืœืš ืฉื™ื—ื•ืช ื•ื™ื“ืื• ื•ื•ืขื™ื“ื•ืช ื”ืžื‘ื•ืกืกื•ืช ืขืœ WebRTC.
  • ื‘ืคืœื˜ืคื•ืจืžืช Windows ืขื‘ื•ืจ ืžืขื‘ื“ื™ Intel GPU ื‘ื›ืœ ืจื–ื•ืœื•ืฆื™ื™ืช ืžืกืš ื›ืœื•ืœ ืžืขืจื›ืช ืงื•ืžืคื•ื–ื™ืฆื™ื” WebRender, ื›ืชื•ื‘ ื‘-Rust ื•ืžืืคืฉืจ ืœืš ืœื”ื’ื“ื™ืœ ืžืฉืžืขื•ืชื™ืช ืืช ืžื”ื™ืจื•ืช ื”ืขื™ื‘ื•ื“ ื•ืœื”ืคื—ื™ืช ืืช ืขื•ืžืก ื”ืžืขื‘ื“. WebRender ืžื‘ืฆืขืช ืžื™ืงื•ืจ ื—ื•ืฅ ืฉืœ ืคืขื•ืœื•ืช ืขื™ื‘ื•ื“ ืชื•ื›ืŸ ืขืžื•ื“ื™ื ืœืฆื“ ื”-GPU, ืืฉืจ ืžื™ื•ืฉืžื•ืช ื‘ืืžืฆืขื•ืช ื”ืฆืœืœื•ืช ื”ืคื•ืขืœื•ืช ืขืœ ื”-GPU. ื‘ืขื‘ืจ, WebRender ื”ื•ืคืขืœ ื‘ืคืœื˜ืคื•ืจืžืช Windows 10 ืขื‘ื•ืจ Intel GPUs ื‘ืขืช ืฉื™ืžื•ืฉ ื‘ืจื–ื•ืœื•ืฆื™ื•ืช ืžืกืš ืงื˜ื ื•ืช, ื›ืžื• ื’ื ื‘ืžืขืจื›ื•ืช ืขื AMD Raven Ridge, AMD Evergreen APUs ื•ื‘ืžื—ืฉื‘ื™ื ื ื™ื™ื“ื™ื ืขื ื›ืจื˜ื™ืกื™ื ื’ืจืคื™ื™ื ืฉืœ NVIDIA. ื‘-Linux, WebRender ืžื•ืคืขืœ ื›ืจื’ืข ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ Intel ื•-AMD ืจืง ื‘ื‘ื ื™ื™ื” ืœื™ืœื™ืช, ื•ืื™ื ื• ื ืชืžืš ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ NVIDIA. ื›ื“ื™ ืœืืœืฅ ืื•ืชื• ื‘- about:config, ืขืœื™ืš ืœื”ืคืขื™ืœ ืืช ื”ื”ื’ื“ืจื•ืช "gfx.webrender.all" ื•-"gfx.webrender.enabled" ืื• ืœื”ืคืขื™ืœ ืืช Firefox ืขื ืžืฉืชื ื” ื”ืกื‘ื™ื‘ื” MOZ_WEBRENDER=1 ืžื•ื’ื“ืจ.
  • ื—ืœืงื ืฉืœ ื”ืžืฉืชืžืฉื™ื ื‘ื‘ืจื™ื˜ื ื™ื” ืฉืขื‘ื•ืจื ืžื•ืคืขืœืช ื”ืฆื’ืช ื”ืชื•ื›ืŸ ื”ืžื•ืžืœืฅ ืขืœ ื™ื“ื™ ืฉื™ืจื•ืช Pocket ื‘ื“ืฃ ื”ื›ืจื˜ื™ืกื™ื™ื” ื”ื—ื“ืฉื” ื”ื•ื’ื“ืœ ืœ-100%. ื‘ืขื‘ืจ, ื“ืคื™ื ื›ืืœื” ื”ื•ืฆื’ื• ืจืง ืœืžืฉืชืžืฉื™ื ืžืืจื”"ื‘, ืงื ื“ื” ื•ื’ืจืžื ื™ื”. ื‘ืœื•ืงื™ื ื”ืžืฉื•ืœืžื™ื ืขืœ ื™ื“ื™ ื ื•ืชื ื™ ื—ืกื•ืช ืžื•ืฆื’ื™ื ืจืง ื‘ืืจื”"ื‘ ื•ืžืกื•ืžื ื™ื ื‘ื‘ื™ืจื•ืจ ื›ืคืจืกื•ืžื•ืช. ื”ื”ืชืืžื” ื”ืื™ืฉื™ืช ื”ืงืฉื•ืจื” ืœื‘ื—ื™ืจืช ื”ืชื›ื ื™ื ืžืชื‘ืฆืขืช ื‘ืฆื“ ื”ืœืงื•ื— ื•ืœืœื ื”ืขื‘ืจืช ืคืจื˜ื™ ืžืฉืชืžืฉ ืœืฆื“ื“ื™ื ืฉืœื™ืฉื™ื™ื (ื›ืœ ืจืฉื™ืžืช ื”ืงื™ืฉื•ืจื™ื ื”ืžื•ืžืœืฆื™ื ืœื™ื•ื ื”ื ื•ื›ื—ื™ ื ื˜ืขื ืช ืœื“ืคื“ืคืŸ, ื”ืžื“ื•ืจื’ ื‘ืฆื“ ื”ืžืฉืชืžืฉ ืขืœ ืกืžืš ื ืชื•ื ื™ ื”ื™ืกื˜ื•ืจื™ื™ืช ื”ื’ืœื™ืฉื” ). ื›ื“ื™ ืœื”ืฉื‘ื™ืช ืชื•ื›ืŸ ืฉื”ื•ืžืœืฅ ืขืœ ื™ื“ื™ Pocket, ื™ืฉ ื”ื’ื“ืจื” ื‘ืงื•ื ืคื™ื’ื•ืจื˜ื•ืจ (Firefox Home Content/Recommended by Pocket) ื•ืืช ื”ืืคืฉืจื•ืช "browser.newtabpage.activity-stream.feeds.topsites" ื‘- about:config.
  • ื›ืœื•ืœ ืชื™ืงื•ื ื™ื ื”ืžืฉืคื™ืขื™ื ืขืœ ื”ื‘ื™ืฆื•ืขื™ื ื•ื”ื™ืฆื™ื‘ื•ืช ืฉืœ ื”ืืฆืช ื—ื•ืžืจื” ืฉืœ ืคืขื ื•ื— ื•ื™ื“ืื• ื‘ืืžืฆืขื•ืช VA-API (ื ืชืžืš ืจืง ื‘ืกื‘ื™ื‘ื•ืช ืžื‘ื•ืกืกื•ืช Wayland).
  • ื”ื“ืจื™ืฉื•ืช ืœืจื›ื™ื‘ื™ ืžืขืจื›ืช ืœื™ื ื•ืงืก ื”ื•ื’ื“ืœื•. ื”ืคืขืœืช Firefox ืขืœ ืœื™ื ื•ืงืก ื“ื•ืจืฉืช ื›ืขืช ืœืคื—ื•ืช Glibc 2.17, libstdc++ 4.8.1 ื•-GTK+ 3.14.
  • ื‘ืขืงื‘ื•ืช ื”ืชื•ื›ื ื™ืช ืœื”ืคืกื™ืง ืืช ื”ืชืžื™ื›ื” ื‘ืืœื’ื•ืจื™ืชืžื™ื ืงืจื™ืคื˜ื•ื’ืจืคื™ื™ื ืžื“ื•ืจ ืงื•ื“ื, ื›ืœ ื—ื‘ื™ืœื•ืช ื”ืฆื•ืคืŸ ืฉืœ TLS ื”ืžื‘ื•ืกืกื•ืช ืขืœ DHE (TLS_DHE_*, ืคืจื•ื˜ื•ืงื•ืœ ื—ื™ืœื•ืคื™ ืžืคืชื—ื•ืช Diffie-Hellman) ืžื•ืฉื‘ืชื•ืช ื›ื‘ืจื™ืจืช ืžื—ื“ืœ. ื›ื“ื™ ืœื”ืคื—ื™ืช ืืช ื”ื”ืฉืคืขื” ื”ืฉืœื™ืœื™ืช ื”ืคื•ื˜ื ืฆื™ืืœื™ืช ืฉืœ ื”ืฉื‘ืชืช DHE, ื ื•ืกืคื• ืฉืชื™ ื—ื‘ื™ืœื•ืช ืฆื•ืคืŸ AES-GCM ื—ื“ืฉื•ืช ืžื‘ื•ืกืกื•ืช SHA2.
  • ื ึธื›ึถื” ืชืžื™ื›ื” ื‘ืคืจื•ื˜ื•ืงื•ืœื™ TLS 1.0 ื•-TLS 1.1. ื›ื“ื™ ืœื’ืฉืช ืœืืชืจื™ื ื“ืจืš ืขืจื•ืฅ ืชืงืฉื•ืจืช ืžืื•ื‘ื˜ื—, ื”ืฉืจืช ื—ื™ื™ื‘ ืœืกืคืง ืชืžื™ื›ื” ื‘-TLS 1.2 ืœืคื—ื•ืช. ืœืคื™ ื’ื•ื’ืœ, ื ื›ื•ืŸ ืœืขื›ืฉื™ื• ื›-0.5% ืžื”ื”ื•ืจื“ื•ืช ืฉืœ ื“ืคื™ ืื™ื ื˜ืจื ื˜ ืžืžืฉื™ื›ื•ืช ืœื”ืชื‘ืฆืข ื‘ืืžืฆืขื•ืช ื’ืจืกืื•ืช ืžื™ื•ืฉื ื•ืช ืฉืœ TLS. ื”ื”ืฉื‘ืชื” ื‘ื•ืฆืขื” ื‘ื”ืชืื ื”ืžืœืฆื•ืช IETF (ื›ื•ื— ืžืฉื™ืžื” ืœื”ื ื“ืกืช ืื™ื ื˜ืจื ื˜). ื”ืกื™ื‘ื” ืœืกื™ืจื•ื‘ ืœืชืžื•ืš ื‘-TLS 1.0/1.1 ื”ื™ื ื”ื™ืขื“ืจ ืชืžื™ื›ื” ื‘ืฆืคื ื™ื ืžื•ื“ืจื ื™ื™ื (ืœืžืฉืœ, ECDHE ื•-AEAD) ื•ื”ื“ืจื™ืฉื” ืœืชืžื•ืš ื‘ืฆืคื ื™ื ื™ืฉื ื™ื, ืฉืืžื™ื ื•ืชื ืžื•ื˜ืœืช ื‘ืกืคืง ื‘ืฉืœื‘ ื”ื ื•ื›ื—ื™ ืฉืœ ื”ืชืคืชื—ื•ืช ื˜ื›ื ื•ืœื•ื’ื™ื™ืช ื”ืžื—ืฉื•ื‘ ( ืœื“ื•ื’ืžื”, ื ื“ืจืฉืช ืชืžื™ื›ื” ืขื‘ื•ืจ TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, MD5 ืžืฉืžืฉ ืœื‘ื“ื™ืงืช ืชืงื™ื ื•ืช ื•ืื™ืžื•ืช ื•-SHA-1). ืืชื” ื™ื›ื•ืœ ืœืฉื—ื–ืจ ืืช ื”ื™ื›ื•ืœืช ืœืขื‘ื•ื“ ืขื ื’ืจืกืื•ืช TLS ืžื™ื•ืฉื ื•ืช ืขืœ ื™ื“ื™ ื”ื’ื“ืจืช security.tls.version.enable-deprecated = true ืื• ืขืœ ื™ื“ื™ ืฉื™ืžื•ืฉ ื‘ื›ืคืชื•ืจ ื‘ื“ืฃ ื”ืฉื’ื™ืื” ื”ืžื•ืฆื’ ื‘ืขืช ื‘ื™ืงื•ืจ ื‘ืืชืจ ืขื ื”ืคืจื•ื˜ื•ืงื•ืœ ื”ื™ืฉืŸ.
  • ืื™ื›ื•ืช ื”ืขื‘ื•ื“ื” ืขื ืงื•ืจืื™ ืžืกืš ืœืื ืฉื™ื ืขื ืœืงื•ืช ืจืื™ื™ื” ืฉื•ืคืจื” ืžืฉืžืขื•ืชื™ืช (ื‘ืขื™ื•ืช ื‘ืžื™ืงื•ื ื”ืกืžื ื™ื ื ืคืชืจื•, ื‘ื•ื˜ืœื” ื”ื”ืงืคืื”, ืขื™ื‘ื•ื“ ืฉืœ ื˜ื‘ืœืื•ืช ื’ื“ื•ืœื•ืช ืžืื•ื“ ื”ื•ืืฅ ื•ื›ื•'). ืขื‘ื•ืจ ืžืฉืชืžืฉื™ื ืขื ืžื™ื’ืจื ื•ืช ื•ืืคื™ืœืคืกื™ื”, ื”ืฆื˜ืžืฆืžื• ืืคืงื˜ื™ ืื ื™ืžืฆื™ื” ื›ื’ื•ืŸ ื”ื“ื’ืฉืช ื›ืจื˜ื™ืกื™ื•ืช ื•ื”ืจื—ื‘ืช ืกืจื’ืœ ื”ื—ื™ืคื•ืฉ.
  • ืขื‘ื•ืจ ืืจื’ื•ื ื™ื, ื›ืœืœื™ื ื—ื“ืฉื™ื ื ื•ืกืคื• ืœืžื“ื™ื ื™ื•ืช ืงื‘ื•ืฆืชื™ืช ืœืงื‘ื™ืขืช ืชืฆื•ืจื” ืฉืœ ืžื˜ืคืœื™ ื™ื™ืฉื•ืžื™ื ื—ื™ืฆื•ื ื™ื™ื, ื”ืฉื‘ืชืช ืžืฆื‘ ืชืžื•ื ื” ื‘ืชื•ืš ืชืžื•ื ื” ื•ื“ืจื™ืฉื” ืœืฆื™ื•ืŸ ืกื™ืกืžืช ืื‘.
  • ื‘ืžื ื•ืข JavaScript ืฉืœ SpiderMonkey ืžึฐืขื•ึผื“ื›ึผึธืŸ ืชืช-ืžืขืจื›ืช ืœืขื™ื‘ื•ื“ ื‘ื™ื˜ื•ื™ื™ื ืจื’ื•ืœืจื™ื™ื ื”ืžืกื•ื ื›ืจื ืช ืขื ื”ื™ื™ืฉื•ื ืžืžื ื•ืข V8 JavaScript ื”ืžืฉืžืฉ ื‘ื“ืคื“ืคื ื™ื ื”ืžื‘ื•ืกืกื™ื ืขืœ ืคืจื•ื™ืงื˜ Chromium. ื”ืฉื™ื ื•ื™ ืืคืฉืจ ืœื ื• ืœื™ื™ืฉื ืชืžื™ื›ื” ื‘ืชื›ื•ื ื•ืช ื”ื‘ืื•ืช ื”ืงืฉื•ืจื•ืช ืœื‘ื™ื˜ื•ื™ื™ื ืจื’ื•ืœืจื™ื™ื:
    • ืงื‘ื•ืฆื•ืช ืขื ืฉื ืœืืคืฉืจ ืœืš ืœืฉื™ื™ืš ื—ืœืงื™ ืžื—ืจื•ื–ืช ื”ืžื•ืชืืžื™ื ืœื‘ื™ื˜ื•ื™ ืจื’ื•ืœืจื™ ืขื ืฉืžื•ืช ืกืคืฆื™ืคื™ื™ื ื‘ืžืงื•ื ืžืกืคืจื™ื ืกื™ื“ื•ืจื™ื™ื ืฉืœ ื”ืชืืžื•ืช (ืœื“ื•ื’ืžื”, ื‘ืžืงื•ื "/(\d{4})-(\d{2})-(\d{ 2})/" ืืชื” ื™ื›ื•ืœ ืœืฆื™ื™ืŸ "/( ? \d{4})-(? \d{2})-(? \d{2})/" ื•ื’ื™ืฉื” ืœืฉื ื” ืœื ื“ืจืš result[1], ืืœื ื“ืจืš result.groups.year).
    • ื‘ืจื™ื—ื” ืžืฉื™ืขื•ืจื™ื ืชื•ื•ื™ Unicode ืžื•ืกื™ืคื™ื ืงื•ื ืกื˜ืจื•ืงืฆื™ื•ืช \p{...} ื•-\P{...}, ืœื“ื•ื’ืžื”, \p{Number} ืžื’ื“ื™ืจ ืืช ื›ืœ ื”ืชื•ื•ื™ื ื”ืืคืฉืจื™ื™ื ืขื ืžืกืคืจื™ื (ื›ื•ืœืœ ืกื™ืžื ื™ื ื›ืžื• โ‘ ), \p{Alphabetic} - ืื•ืชื™ื•ืช (ื›ื•ืœืœ ื”ื™ืจื•ื’ืœื™ืคื™ื ), \p{ืžืชืžื˜ื™ืงื”} - ืกืžืœื™ื ืžืชืžื˜ื™ื™ื ื•ื›ื•'.
    • ื“ื’ืœ dotAll ื’ื•ืจื ืœื™ืจื™ ืฉืœ ืžืกื›ืช "." ื›ื•ืœืœ ืชื•ื•ื™ื ืœื”ื–ื ืช ืฉื•ืจื”.
    • ืžืฉื˜ืจ ื”ืกืชื›ืœ ืื—ื•ืจื” ืžืืคืฉืจ ืœืงื‘ื•ืข ื‘ื‘ื™ื˜ื•ื™ ืจื’ื•ืœืจื™ ืฉืชื‘ื ื™ืช ืื—ืช ืงื•ื“ืžืช ืœืื—ืจืช (ืœื“ื•ื’ืžื”, ื”ืชืืžืช ืกื›ื•ื ื“ื•ืœืจ ืžื‘ืœื™ ืœืœื›ื•ื“ ืืช ืกื™ืžืŸ ื”ื“ื•ืœืจ).
  • ืžื™ื•ืฉื ืžื—ืœืงื•ืช ืคืกืื•ื“ื• ืฉืœ CSS :is() ะธ :ืื™ืคื”() ืœืื’ื“ ื—ื•ืงื™ CSS ืœืงื‘ื•ืฆื” ืฉืœ ื‘ื•ืจืจื™ื. ืœืžืฉืœ, ื‘ืžืงื•ื

    header p:hover, main p:hover, ื›ื•ืชืจืช ืชื—ืชื•ื ื” p:hover {โ€ฆ}

    ื ื™ืชืŸ ืœืฆื™ื™ืŸ

    :is(header, main, footer) p:hover {โ€ฆ}

  • ืžื—ืœืงื•ืช ืคืกืื•ื“ื• ืฉืœ CSS ื›ืœื•ืœื™ื :ืœืงืจื™ืื” ื‘ืœื‘ื“ ะธ :ืงืจื•ื ื•ื›ืชื•ื‘ ืœืงืฉื™ืจื” ืœืจื›ื™ื‘ื™ื (ืงืœื˜ ืื• ืื–ื•ืจ ื˜ืงืกื˜) ืฉืืกื•ืจื™ื ืื• ืžื•ืชืจื™ื ืœืขืจื™ื›ื”.
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืฉื™ื˜ื” Intl.ListFormat() ื›ื“ื™ ืœื™ืฆื•ืจ ืจืฉื™ืžื•ืช ืžืงื•ืžื™ื•ืช (ืœื“ื•ื’ืžื”, ื”ื—ืœืคืช "ืื•" ื‘"ืื•", "ื•" ื‘"ื•").

    const lf = new Intl.ListFormat('en');
    lf.format(['ืคืจื ืง', 'ื›ืจื™ืกื˜ื™ืŸ', 'ืคืœื•ืจื”']);
    // โ†’ 'ืคืจื ืง, ื›ืจื™ืกื˜ื™ืŸ ื•ืคืœื•ืจื”'
    // ืขื‘ื•ืจ ื”ืžืงื•ื "ru" ื–ื” ื™ื”ื™ื” 'ืคืจื ืง, ืงืจื™ืกื˜ื™ืŸ ื•ืคืœื•ืจื”'

  • ื”ืฉื™ื˜ื” Intl.NumberFormat ืชืžื™ื›ื” ื ื•ืกืคืช ื‘ืขื™ืฆื•ื‘ ื™ื—ื™ื“ื•ืช ืžื“ื™ื“ื”, ืžื˜ื‘ืขื•ืช, ืกื™ืžื•ื ื™ื ืžื“ืขื™ื™ื ื•ืงื•ืžืคืงื˜ื™ื™ื (ืœื“ื•ื’ืžื”, "Intl.NumberFormat('en', {style: 'unit', unit: 'meter-per-second'}");
  • ืฉื™ื˜ื” ื ื•ืกืคื” ParentNode.replaceChildren(), ื”ืžืืคืฉืจ ืœืš ืœื”ื—ืœื™ืฃ ืื• ืœื ืงื•ืช ืฆื•ืžืช ืฆืืฆื ืงื™ื™ื.
  • ืขื ืฃ ESR ื›ื•ืœืœ ืชืžื™ื›ื” ืขื‘ื•ืจ Service worker ื•-Push API (ื”ื ื”ื•ืฉื‘ืชื• ื‘ืžื”ื“ื•ืจื” ื”ืงื•ื“ืžืช ืฉืœ ESR).
  • WebAssembly ืžื•ืกื™ืคื” ืชืžื™ื›ื” ื‘ื™ื™ื‘ื•ื โ€‹โ€‹ื•ื™ื™ืฆื•ื ืคืจืžื˜ืจื™ื ืฉืœ ืคื•ื ืงืฆื™ื•ืช ืฉืœ 64 ืกื™ื‘ื™ื•ืช ื‘ืืžืฆืขื•ืช ืกื•ื’ JavaScript BigInt. ื”ืจื—ื‘ื” ื™ื•ืฉืžื” ื’ื ืขื‘ื•ืจ WebAssembly ืจื‘ ืขืจื›ื™ื, ืžึฐืึทืคืฉืึถืจ ืคื•ื ืงืฆื™ื•ืช ืžื—ื–ื™ืจื•ืช ื™ื•ืชืจ ืžืขืจืš ืื—ื“.
  • ื‘ืงื•ื ืกื•ืœื” ืœืžืคืชื—ื™ ืืชืจื™ื ืžึฐืื•ึผื‘ื˜ึธื— ืจื™ืฉื•ื ืžืคื•ืจื˜ ืฉืœ ืฉื’ื™ืื•ืช ื”ืงืฉื•ืจื•ืช ืœ-Promise, ื›ื•ืœืœ ืžื™ื“ืข ืขืœ ืฉืžื•ืช, ืขืจื™ืžื•ืช ื•ืžืืคื™ื™ื ื™ื, ืžื” ืฉืžืงืœ ื‘ื”ืจื‘ื” ืขืœ ืคืชืจื•ืŸ ืฉื’ื™ืื•ืช ื‘ืขืช ืฉื™ืžื•ืฉ ื‘ืžืกื’ืจื•ืช ื›ืžื• Angular.

    ืžื”ื“ื•ืจืช Firefox 78

  • Web Developer Tools ืฉื™ืคืจื• ืžืฉืžืขื•ืชื™ืช ืืช ื‘ื™ืฆื•ืขื™ ื”ื ื™ื•ื•ื˜ ื‘-DOM ื‘ืขืช ื‘ื“ื™ืงืช ืืชืจื™ื ื”ืžืฉืชืžืฉื™ื ื‘ื”ืจื‘ื” ืžืืคื™ื™ื ื™ CSS.
  • ืžืืชืจ ื”ื‘ืื’ื™ื ืฉืœ JavaScript ื™ืฉ ื›ืขืช ืืช ื”ื™ื›ื•ืœืช ืœื”ืจื—ื™ื‘ ืฉืžื•ืช ืžืฉืชื ื™ื ืžืงื•ืฆืจื™ื ื‘ื”ืชื‘ืกืก ืขืœ ืžืคืช ืžืงื•ืจ ื‘ืขืช ื”ืฉื™ืžื•ืฉ ื ืงื•ื“ื•ืช ืจื™ืฉื•ื (Log points), ื”ืžืืคืฉืจื•ืช ืœื–ืจื•ืง ืžื™ื“ืข ืขืœ ืžืกืคืจ ื”ืฉื•ืจื” ื‘ืงื•ื“ ื•ืขืœ ืขืจื›ื™ ื”ืžืฉืชื ื™ื ืœืงื•ื ืกื•ืœืช ื”ืื™ื ื˜ืจื ื˜ ื‘ืจื’ืข ืฉื”ืชื’ ืžื•ืคืขืœ.
  • ื‘ืžืžืฉืง ื‘ื“ื™ืงืช ื”ืจืฉืช ื ื•ืกืฃ ืžื™ื“ืข ืขืœ ืชื•ืกืคื•ืช, ืžื ื’ื ื•ื ื™ ืื ื˜ื™ ืžืขืงื‘ ื•ื”ื’ื‘ืœื•ืช CORS (Cross-Origin Resource Sharing) ืฉื’ืจืžื• ืœื—ืกื™ืžืช ื”ื‘ืงืฉื”.
    ืžื”ื“ื•ืจืช Firefox 78

ื‘ื ื•ืกืฃ ืœื—ื™ื“ื•ืฉื™ื ื•ืชื™ืงื•ื ื™ ื‘ืื’ื™ื ื‘ืคื™ื™ืจืคื•ืงืก 78
ื—ื•ืกืœื• ืกื“ืจื” ืฉืœ ืคื’ื™ืขื•ืช, ืžืชื•ื›ื ื›ืžื” ืžืกื•ืžื ื™ื ื›ืงืจื™ื˜ื™ื™ื, ื›ืœื•ืžืจ. ื™ื›ื•ืœ ืœื”ื•ื‘ื™ืœ ืœื‘ื™ืฆื•ืข ืงื•ื“ ืฉืœ ืชื•ืงืฃ ื‘ืขืช ืคืชื™ื—ืช ื“ืคื™ื ืฉืขื•ืฆื‘ื• ื‘ืžื™ื•ื—ื“. ืžื™ื“ืข ื”ืžืคืจื˜ ืืช ื‘ืขื™ื•ืช ื”ืื‘ื˜ื—ื” ืฉืชื•ืงื ื• ืื™ื ื• ื–ืžื™ืŸ ื‘ืฉืœื‘ ื–ื”, ืืš ืจืฉื™ืžืช ื ืงื•ื“ื•ืช ืชื•ืจืคื” ืฆืคื•ื™ื” ืœื”ืชืคืจืกื ืชื•ืš ืžืกืคืจ ืฉืขื•ืช.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”