ํฌ๋กฌ 99 ๋ฆด๋ฆฌ์Šค

๊ตฌ๊ธ€์€ ํฌ๋กฌ 99 ์›น๋ธŒ๋ผ์šฐ์ €๋ฅผ ๊ณต๊ฐœํ–ˆ๊ณ , ๋™์‹œ์— ํฌ๋กฌ์˜ ๊ธฐ๋ฐ˜์ด ๋˜๋Š” ๋ฌด๋ฃŒ ํฌ๋กœ๋ฏธ์›€(Chromium) ํ”„๋กœ์ ํŠธ๋„ ์•ˆ์ •์ ์œผ๋กœ ์ถœ์‹œ๋๋‹ค. Chrome ๋ธŒ๋ผ์šฐ์ €๋Š” Google ๋กœ๊ณ  ์‚ฌ์šฉ, ์ถฉ๋Œ ์‹œ ์•Œ๋ฆผ ์ „์†ก ์‹œ์Šคํ…œ, ๋ณต์‚ฌ ๋ฐฉ์ง€๋œ ๋น„๋””์˜ค ์ฝ˜ํ…์ธ (DRM) ์žฌ์ƒ ๋ชจ๋“ˆ, ์ž๋™ ์—…๋ฐ์ดํŠธ ์„ค์น˜ ์‹œ์Šคํ…œ, RLZ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ „์†ก ๋“ฑ์œผ๋กœ ๊ตฌ๋ณ„๋ฉ๋‹ˆ๋‹ค. ์ˆ˜์ƒ‰. ๋‹ค์Œ Chrome 100 ๋ฆด๋ฆฌ์Šค๋Š” 29์›” XNUMX์ผ๋กœ ์˜ˆ์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

Chrome 99์˜ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ:

  • Android์šฉ Chrome์—๋Š” ๋ฐœ๊ธ‰ ๋ฐ ์ทจ์†Œ๋œ ๋ชจ๋“  ์ธ์ฆ์„œ์— ๋Œ€ํ•œ ๋…๋ฆฝ์ ์ธ ๊ณต๊ฐœ ๋กœ๊ทธ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ธ์ฆ์„œ ํˆฌ๋ช…์„ฑ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฐœ ๋กœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ธ์ฆ ๊ธฐ๊ด€์˜ ๋ชจ๋“  ๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ฐ ์ž‘์—…์— ๋Œ€ํ•ด ๋…๋ฆฝ์ ์ธ ๊ฐ์‚ฌ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋น„๋ฐ€๋ฆฌ์— ๊ฐ€์งœ ๊ธฐ๋ก์„ ์ƒ์„ฑํ•˜๋ ค๋Š” ์‹œ๋„๋ฅผ ์ฆ‰์‹œ ๋ชจ๋‹ˆํ„ฐ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ธ์ฆ์„œ ํˆฌ๋ช…์„ฑ์— ๋ฐ˜์˜๋˜์ง€ ์•Š์€ ์ธ์ฆ์„œ๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž๋™์œผ๋กœ ๊ฑฐ๋ถ€๋˜๋ฉฐ ์ ์ ˆํ•œ ์˜ค๋ฅ˜๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ์ด ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ๋ฐ์Šคํฌํ†ฑ ๋ฒ„์ „๊ณผ ์†Œ์ˆ˜์˜ Android ์‚ฌ์šฉ์ž์—๊ฒŒ๋งŒ ํ™œ์„ฑํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋งŽ์€ ๋ถˆ๋งŒ์œผ๋กœ ์ธํ•ด ์ด์ „์— ํ…Œ์ŠคํŠธ ๋ชจ๋“œ์—์„œ ์ œ์•ˆ๋˜์—ˆ๋˜ ๊ฐœ์ธ ๋„คํŠธ์›Œํฌ ์•ก์„ธ์Šค ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ๋น„ํ™œ์„ฑํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋กœ์ปฌ ๋„คํŠธ์›Œํฌ ๋˜๋Š” ์‚ฌ์šฉ์ž ์ปดํ“จํ„ฐ(localhost)์— ์žˆ๋Š” ๋ฆฌ์†Œ์Šค์— ์•ก์„ธ์Šคํ•  ๋•Œ ๋กœ๋“œ๋œ ์Šคํฌ๋ฆฝํŠธ์™€ ๊ด€๋ จ๋œ ๊ณต๊ฒฉ์— ๋Œ€ํ•œ ๋ณดํ˜ธ๋ฅผ ๊ฐ•ํ™”ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์ดํŠธ๊ฐ€ ์˜คํ”ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๋ถ€ ๋„คํŠธ์›Œํฌ์˜ ํ•˜์œ„ ๋ฆฌ์†Œ์Šค์— ์•ก์„ธ์Šคํ•˜๋Š” ๊ฒฝ์šฐ ์ด๋Ÿฌํ•œ ๊ณต๊ฒฉ์œผ๋กœ๋ถ€ํ„ฐ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•ด ํ•ด๋‹น ํ•˜์œ„ ๋ฆฌ์†Œ์Šค๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์— ๋Œ€ํ•œ ๋ช…์‹œ์ ์ธ ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ๊ฒƒ์ด ์ œ์•ˆ๋ฉ๋‹ˆ๋‹ค. Google์€ ๋ฐ›์€ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ”ํƒ•์œผ๋กœ ๊ตฌํ˜„์„ ๊ฒ€ํ† ํ•˜๊ณ  ํ–ฅํ›„ ๋ฆด๋ฆฌ์Šค์—์„œ ํ–ฅ์ƒ๋œ ๋ฒ„์ „์„ ์ œ๊ณตํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • ๊ธฐ๋ณธ ๊ฒ€์ƒ‰ ์—”์ง„์„ ์ œ๊ฑฐํ•˜๋Š” ๊ธฐ๋Šฅ์ด ๋ฐ˜ํ™˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Chrome 97๋ถ€ํ„ฐ "๊ฒ€์ƒ‰ ์—”์ง„ ๊ด€๋ฆฌ" ์„น์…˜(chrome://settings/searchEngines)์˜ ๊ตฌ์„ฑ๊ธฐ์— ๊ธฐ๋ณธ ๊ฒ€์ƒ‰ ์—”์ง„(Google, Bing, Yahoo) ๋ชฉ๋ก์—์„œ ์š”์†Œ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ํŽธ์ง‘ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Œ์„ ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰ ์—”์ง„ ๋งค๊ฐœ ๋ณ€์ˆ˜๊ฐ€ ์ค‘์ง€๋˜์–ด ๋งŽ์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ถˆ๋งŒ์ด ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค.
  • Windows ํ”Œ๋žซํผ์—์„œ๋Š” Windows ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์‹œ์Šคํ…œ ์„ค์ •์ด๋‚˜ ์ œ์–ดํŒ์„ ํ†ตํ•ด ์ž์ฒด ํฌํ•จ๋œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(PWA, Progressive Web App)์„ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋‘ ์ž๋ฆฌ๊ฐ€ ์•„๋‹Œ ์„ธ ์ž๋ฆฌ๋กœ ๊ตฌ์„ฑ๋œ ๋ฒ„์ „์— ๋„๋‹ฌํ•œ ํ›„ ์‚ฌ์ดํŠธ ์ค‘๋‹จ ๊ฐ€๋Šฅ์„ฑ์— ๋Œ€ํ•œ ์ตœ์ข… ํ…Œ์ŠคํŠธ๊ฐ€ ์ˆ˜ํ–‰๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค(ํ•œ ๋ฒˆ์— Chrome 10 ์ถœ์‹œ ํ›„ ์‚ฌ์šฉ์ž ์—์ด์ „ํŠธ ๊ตฌ๋ฌธ ๋ถ„์„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋งŽ์€ ๋ฌธ์ œ๊ฐ€ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค). "chrome://flags#force-major-version-to-100" ์˜ต์…˜์ด ํ™œ์„ฑํ™”๋˜๋ฉด User-Agent ํ—ค๋”์— ๋ฒ„์ „ 100์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • CSS๋Š” @layer ๊ทœ์น™์„ ์‚ฌ์šฉํ•˜์—ฌ ์ •์˜๋˜๊ณ  layer() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ CSS @import ๊ทœ์น™์„ ํ†ตํ•ด ๊ฐ€์ ธ์˜จ ๊ณ„๋‹จ์‹ ๋ ˆ์ด์–ด์— ๋Œ€ํ•œ ์ง€์›์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ๊ณ„๋‹จ์‹ ๋ ˆ์ด์–ด ๋‚ด์˜ CSS ๊ทœ์น™์€ ํ•จ๊ป˜ ๊ณ„๋‹จ์‹์œผ๋กœ ๋ฐฐ์—ด๋˜์–ด ์ „์ฒด ๊ณ„๋‹จ์‹์„ ๋” ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๊ณ , ๋ ˆ์ด์–ด ์ˆœ์„œ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์—ฐ์„ฑ์„ ์ œ๊ณตํ•˜๋ฉฐ, CSS ํŒŒ์ผ์„ ๋ณด๋‹ค ๋ช…์‹œ์ ์œผ๋กœ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜์—ฌ ์ถฉ๋Œ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๊ณ„๋‹จ์‹ ๋ ˆ์ด์–ด๋Š” ๋””์ž์ธ ํ…Œ๋งˆ, ์š”์†Œ์˜ ๊ธฐ๋ณธ ์Šคํƒ€์ผ ์ •์˜, ๊ตฌ์„ฑ ์š”์†Œ ๋””์ž์ธ์„ ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๋‚ด๋ณด๋‚ด๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๊ธฐ ํŽธ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • showPicker() ๋ฉ”์†Œ๋“œ๊ฐ€ HTMLInputElement ํด๋ž˜์Šค์— ์ถ”๊ฐ€๋˜์–ด ํ•„๋“œ์˜ ์ผ๋ฐ˜์ ์ธ ๊ฐ’์„ ์ฑ„์šฐ๊ธฐ ์œ„ํ•ด ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ง„ ๋Œ€ํ™” ์ƒ์ž๋ฅผ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. "date", "month", "week", "time", "datetime-local", "color" ๋ฐ "file" ์œ ํ˜•๊ณผ ์ž๋™ ์™„์„ฑ ๋ฐ ๋ฐ์ดํ„ฐ ๋ชฉ๋ก์„ ์ง€์›ํ•˜๋Š” ํ•„๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋‚ ์งœ ์„ ํƒ์„ ์œ„ํ•œ ๋‹ฌ๋ ฅ ๋ชจ์–‘์˜ ์ธํ„ฐํŽ˜์ด์Šค๋‚˜ ์ƒ‰์ƒ ์ž…๋ ฅ์„ ์œ„ํ•œ ํŒ”๋ ˆํŠธ๋ฅผ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ํฌ๋กฌ 99 ๋ฆด๋ฆฌ์Šค
  • ์˜ค๋ฆฌ์ง„ ํŠธ๋ผ์ด์–ผ ๋ชจ๋“œ(๋ณ„๋„์˜ ํ™œ์„ฑํ™”๊ฐ€ ํ•„์š”ํ•œ ์‹คํ—˜์  ๊ธฐ๋Šฅ)์—์„œ๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ๋‹คํฌ ๋””์ž์ธ ๋ชจ๋“œ๋ฅผ ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด๋‘์šด ํ…Œ๋งˆ์˜ ์ƒ‰์ƒ๊ณผ ๋ฐฐ๊ฒฝ์€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋งค๋‹ˆํŽ˜์ŠคํŠธ ํŒŒ์ผ์˜ ์ƒˆ๋กœ์šด color_scheme_dark ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ ํƒ๋ฉ๋‹ˆ๋‹ค. Origin Trial์€ localhost ๋˜๋Š” 127.0.0.1์—์„œ ๋‹ค์šด๋กœ๋“œํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋˜๋Š” ํŠน์ • ์‚ฌ์ดํŠธ์— ๋Œ€ํ•ด ์ œํ•œ๋œ ์‹œ๊ฐ„ ๋™์•ˆ ์œ ํšจํ•œ ํŠน์ˆ˜ ํ† ํฐ์„ ๋“ฑ๋กํ•˜๊ณ  ๋ฐ›์€ ํ›„ ์ง€์ •๋œ API๋กœ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
  • ํ•„๊ธฐ์ธ์‹ API๊ฐ€ ์•ˆ์ •ํ™”๋˜์–ด ๋ˆ„๊ตฌ๋‚˜ ์šด์˜์ฒด์ œ์—์„œ ์ œ๊ณตํ•˜๋Š” ํ•„๊ธฐ์ธ์‹ ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์„ค์น˜๋œ ๋…๋ฆฝํ˜• ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(PWA, Progressive Web App)์˜ ๊ฒฝ์šฐ Window Controls Overlay ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์•ˆ์ •ํ™”๋˜์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ํ™”๋ฉด ์˜์—ญ์ด ํ‘œ์ค€ ์ฐฝ ์ œ์–ด ๋ฒ„ํŠผ์ด ์žˆ๋Š” ์ œ๋ชฉ ์˜์—ญ์„ ํฌํ•จํ•˜์—ฌ ์ „์ฒด ์ฐฝ์œผ๋กœ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค. (๋‹ซ๊ธฐ, ์ตœ์†Œํ™”, ์ตœ๋Œ€ํ™”)๊ฐ€ ๊ฒน์ณ์ง‘๋‹ˆ๋‹ค. ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์ฐฝ ์ œ์–ด ๋ฒ„ํŠผ์ด ์žˆ๋Š” ์˜ค๋ฒ„๋ ˆ์ด ๋ธ”๋ก์„ ์ œ์™ธํ•˜๊ณ  ์ „์ฒด ์ฐฝ์˜ ๋ Œ๋”๋ง ๋ฐ ์ž…๋ ฅ ์ฒ˜๋ฆฌ๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • CSS ํ•จ์ˆ˜ calc()๋Š” "infinity", "-infinity" ๋ฐ "NaN"๊ณผ ๊ฐ™์€ ๊ฐ’์ด๋‚˜ 'calc(1/0)'๊ณผ ๊ฐ™์ด ์œ ์‚ฌํ•œ ๊ฐ’์„ ์ƒ์„ฑํ•˜๋Š” ํ‘œํ˜„์‹์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • CSS ์†์„ฑ color-scheme์— "only" ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์ถ”๊ฐ€๋˜์–ด ์š”์†Œ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ํ‘œ์‹œ๋  ์ˆ˜ ์žˆ๋Š” ์ƒ‰ ๊ตฌ์„ฑํ‘œ("๋ฐ์Œ", "์–ด๋‘์›€", "๋‚ฎ ๋ชจ๋“œ" ๋ฐ "์•ผ๊ฐ„ ๋ชจ๋“œ")๋ฅผ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ), ๊ฐœ๋ณ„ HTML ์š”์†Œ์— ๋Œ€ํ•œ ์ƒ‰์ƒ ๊ตฌ์„ฑํ‘œ ๊ฐ•์ œ ๋ณ€๊ฒฝ์„ ์ œ์™ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, "div { color-scheme: only light }"๋ฅผ ์ง€์ •ํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์–ด๋‘์šด ํ…Œ๋งˆ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋”๋ผ๋„ ๋ฐ์€ ํ…Œ๋งˆ๋งŒ div ์š”์†Œ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • document.adoptedStyleSheets ์†์„ฑ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด ์ด์ œ ์†์„ฑ์„ ์™„์ „ํžˆ ๋‹ค์‹œ ํ• ๋‹นํ•˜๋Š” ๋Œ€์‹  push() ๋ฐ pop()์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด "document.adoptedStyleSheets.push(newSheet);"์ž…๋‹ˆ๋‹ค.
  • CanvasRenderingContext2D ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„์—๋Š” ContextLost ๋ฐ ContextRestored ์ด๋ฒคํŠธ, ์žฌ์„ค์ •() ๋ฉ”์„œ๋“œ, โ€œwillReadFrequentlyโ€ ์˜ต์…˜, CSS ํ…์ŠคํŠธ ์ˆ˜์ •์ž, roundRect ๋ Œ๋”๋ง ๊ธฐ๋ณธ ์š”์†Œ ๋ฐ ์›๋ฟ”ํ˜• ๊ทธ๋ผ๋ฐ์ด์…˜์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. SVG ํ•„ํ„ฐ์— ๋Œ€ํ•œ ์ง€์›์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • "text-emphasis", "text-emphasis-color", "text-emphasis-position" ๋ฐ "text-emphasis-style" ์†์„ฑ์—์„œ "-webkit-" ์ ‘๋‘์‚ฌ๋ฅผ ์ œ๊ฑฐํ–ˆ์Šต๋‹ˆ๋‹ค.
  • HTTPS ์—†์ด ์—ด๋ฆฐ ํŽ˜์ด์ง€์˜ ๊ฒฝ์šฐ ๋ฐฐํ„ฐ๋ฆฌ ์ถฉ์ „์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋Š” Battery Status API์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๊ฐ€ ๊ธˆ์ง€๋ฉ๋‹ˆ๋‹ค.
  • navigator.getGamepads() ๋ฉ”์†Œ๋“œ๋Š” GamepadList ๋Œ€์‹  Gamepad ๊ฐ์ฒด ๋ฐฐ์—ด์˜ ์ถœ๋ ฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. GamepadList๋Š” Gecko ๋ฐ Webkit ์—”์ง„์˜ ํ‘œ์ค€ ์š”๊ตฌ ์‚ฌํ•ญ ๋ฐ ๋™์ž‘์œผ๋กœ ์ธํ•ด Chrome์—์„œ ๋” ์ด์ƒ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • WebCodecs API๋Š” ์‚ฌ์–‘์„ ์ค€์ˆ˜ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ EncodedVideoChunkOutputCallback() ๋ฉ”์„œ๋“œ์™€ VideoFrame() ์ƒ์„ฑ์ž๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • V8 JavaScript ์—”์ง„์—์„œ๋Š” ์ƒˆ๋กœ์šด ์†์„ฑ์ธ Calendar, Collations, hourCycles, numberingSystems, timeZones, textInfo ๋ฐ weekInfo๊ฐ€ Intl.Locale API์— ์ถ”๊ฐ€๋˜์–ด ์ง€์›๋˜๋Š” ๋‹ฌ๋ ฅ, ์‹œ๊ฐ„๋Œ€, ์‹œ๊ฐ„ ๋ฐ ํ…์ŠคํŠธ ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. const arabicEgyptLocale = new Intl.Locale('ar-EG') // ar-EG arabicEgyptLocale.calendars // ['gregory', 'coptic', 'islamic', 'islamic-civil', 'islamic-tbla'] arabicEgyptLocale .collations // ['compat', 'emoji', 'eor'] arabicEgyptLocale.hourCycles // ['h12'] arabicEgyptLocale.numberingSystems // ['arab'] arabicEgyptLocale.timeZones // ['Africa/Cairo'] arabicEgyptLocale .textInfo // { ๋ฐฉํ–ฅ: 'rtl' } japaneseLocale.textInfo // { ๋ฐฉํ–ฅ: 'ltr' } ChineseTaiwanLocale.textInfo // { ๋ฐฉํ–ฅ: 'ltr' }
  • ๋‹ฌ๋ ฅ, ๋ฐ์ดํ„ฐ ์ •๋ ฌ, ํ†ตํ™”, numberingSystem, timeZone ๋ฐ ๋‹จ์œ„ ์†์„ฑ์— ๋Œ€ํ•ด Intl API์— ๋Œ€ํ•ด ์ง€์›๋˜๋Š” ์‹๋ณ„์ž ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•˜๋Š” Intl.supportedValuesOf(code) ํ•จ์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. Intl.supportedValuesOf('unit') // ['์—์ด์ปค', '๋น„ํŠธ', '๋ฐ”์ดํŠธ', '์„ญ์”จ', '์„ผํ‹ฐ๋ฏธํ„ฐ', โ€ฆ]
  • ์›น ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๋„๊ตฌ๊ฐ€ ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋„คํŠธ์›Œํฌ ํŒจ๋„์€ ๋Š๋ฆฐ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ ์กฐ๊ฑด์—์„œ ์ž‘์—…์„ ๋””๋ฒ„๊น…ํ•˜๊ธฐ ์œ„ํ•ด WebSocket ์š”์ฒญ ์†๋„๋ฅผ ๋Šฆ์ถ”๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. Reporting API๋ฅผ ํ†ตํ•ด ์ƒ์„ฑ๋œ ๋ณด๊ณ ์„œ๋ฅผ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•ด "์• ํ”Œ๋ฆฌ์ผ€์ด์…˜" ํƒญ์— ํŒจ๋„์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ๋ ˆ์ฝ”๋” ํŒจ๋„์—์„œ๋Š” ๊ธฐ๋ก๋œ ๋ช…๋ น์„ ์žฌ์ƒํ•˜๊ธฐ ์ „์— ์š”์†Œ๊ฐ€ ํ‘œ์‹œ๋˜๊ฑฐ๋‚˜ ํด๋ฆญ ๊ฐ€๋Šฅํ•ด์งˆ ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์–ด๋‘์šด ํ…Œ๋งˆ์˜ ์—๋ฎฌ๋ ˆ์ด์…˜์ด ๋‹จ์ˆœํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ„ฐ์น˜ ์Šคํฌ๋ฆฐ์—์„œ ํŒจ๋„ ์ œ์–ด๊ฐ€ ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์›น ์ฝ˜์†”์—์„œ ํ…์ŠคํŠธ๋ฅผ ์ƒ‰์ƒ์œผ๋กœ ๊ฐ•์กฐํ•˜๊ธฐ ์œ„ํ•ด ์ด์Šค์ผ€์ดํ”„ ์‹œํ€€์Šค์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ๊ณ , ์™€์ผ๋“œ์นด๋“œ ๋งˆ์Šคํฌ %s, %d, %i ๋ฐ %f์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์œผ๋ฉฐ, ๋ฉ”์‹œ์ง€ ํ•„ํ„ฐ ์ž‘๋™์ด ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    ํฌ๋กฌ 99 ๋ฆด๋ฆฌ์Šค

ํ˜์‹ ๊ณผ ๋ฒ„๊ทธ ์ˆ˜์ • ์™ธ์—๋„ ์ƒˆ ๋ฒ„์ „์—์„œ๋Š” 28๊ฐœ์˜ ์ทจ์•ฝ์ ์ด ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer ๋ฐ AFL ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•œ ์ž๋™ํ™”๋œ ํ…Œ์ŠคํŠธ์˜ ๊ฒฐ๊ณผ๋กœ ๋งŽ์€ ์ทจ์•ฝ์ ์ด ์‹๋ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ์ˆ˜์ค€์˜ ๋ธŒ๋ผ์šฐ์ € ๋ณดํ˜ธ๋ฅผ ์šฐํšŒํ•˜๊ณ  ์ƒŒ๋“œ๋ฐ•์Šค ํ™˜๊ฒฝ ์™ธ๋ถ€์˜ ์‹œ์Šคํ…œ์—์„œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๋Š” ํ™•์ธ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ๋ฆด๋ฆฌ์Šค์˜ ์ทจ์•ฝ์  ๋ฐœ๊ฒฌ์— ๋Œ€ํ•œ ํ˜„๊ธˆ ๋ณด์ƒ ํ”„๋กœ๊ทธ๋žจ์˜ ์ผํ™˜์œผ๋กœ Google์€ 21๋‹ฌ๋Ÿฌ ์ƒ๋‹น์˜ 96๊ฐœ ์ƒ(15000๊ฐœ $10000 ์ƒ, 7000๊ฐœ $5000 ์ƒ, 3000๊ฐœ $2000 ์ƒ, 1000๊ฐœ $XNUMX ์ƒ, XNUMX๊ฐœ $XNUMX ์ƒ, XNUMX๊ฐœ $XNUMX)์„ ์ง€๊ธ‰ํ–ˆ์Šต๋‹ˆ๋‹ค. .

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€