ããã€ã¹ã®ããã©ãŒãã³ã¹ã¯åäžããŠããŸãããã¡ã¢ãªãšããã»ããµã«å¯ŸããWebã®èŠæ±ã¯ãŸããŸãå³ãããªã£ãŠããŸãã ã¿ãéã®ãªãœãŒã¹ã®é©åãªã¬ã³ããªã³ã°ãšã¹ããŒããªå²ãåœãŠã¯ããã®åé¡ã解決ããéèŠãªéšåã§ãã Konstantin Kramlikh PurplePowderã¯ã ã«ã³ãã¡ã¬ã³ã¹ ãI Frontendãã§ã®è¬æŒã§ãChromiumãããžã§ã¯ããšYandex.Browserã®äž¡æ¹ã§çç£æ§ãåäžããããªãœãŒã¹ãç¯çŽããã¢ã«ãŽãªãºã ã«å°å¿µããŸããã
ãããã®ããã€ã-ããšãã°Hibernateãã¯ãããžãŒ-ã¯ã å¥ã®æçš¿ã§æ¢ã«ãœãŒããããŠããŸãã ããŒã³ã¬ããŒãã§ã¯ãã¿ãã®åãæ¿ãã®èŠ³ç¹ããã ãã§ãªããã³ã³ãã³ããã¿ã€ã«ãããŒãžã¬ã€ã€ãŒã®ã¬ã³ããªã³ã°æ¹æ³ãèæ
®ããŠãåé¡ãããåºç¯å²ã«ã«ããŒããŠããŸãã
æåŸã«ãWebã€ã³ã¿ãŒãã§ãŒã¹ã®éçºè
ã¯ãWebãµã€ãã®ããã©ãŒãã³ã¹ã®åé¡ãç¹å®ããŠè§£æ±ºããæ¹æ³ãåŠã¶ããšãã§ããŸãã
-ç§ã®ååã¯Kostyaã§ããYandex.BrowserããŒã ã®å
éšã³ã³ããŒãã³ãéçºã°ã«ãŒãã®è²¬ä»»è
ã§ãã ãã©ãŠã¶ã§ã¯ããã©ãŠã¶ã§ã®ãã¹ãŠã®ãã³ãŒãããããã¹ãŠã®HTML5ãããªãããã¬ã³ããªã³ã°ãã¬ã³ããªã³ã°ããã®ä»ã®åæ§ã®ããã»ã¹ã«è³ããŸã§ã5幎äœãã«ããã£ãŠããŸããŸãªããšãè¡ã£ãŠããŸããã
éå»1幎åãã2幎éãç§ã¯ãã©ãŠã¶ãŒã®ãªãœãŒã¹ã®ç¯çŽã«é¢é£ãããããžã§ã¯ãïŒCPUãã¡ã¢ãªãŒãããããªãŒïŒã«æºãã£ãŠããŸããã
ããªãã¯èšã-ã³ã¹ãã£ã¢ã2019幎ã®åºã§ããªãœãŒã¹ã®åé¡ã¯ã©ãã«ãããŸããïŒ å¿
èŠãªããã€ã¹ãä»»æã®ãªãœãŒã¹ã§è³Œå
¥ã§ããŸãã ãããããªãŒãã³Mozillaçµ±èšã«ç®ãåãããšããŠãŒã¶ãŒã®ååã4 GB以äžã®ã¡ã¢ãªãæã£ãŠããããšãããããŸãã ãŸãã1ã€ãŸãã¯2ã€ã®ç©çã³ã¢ãæã€å€ãã®ãŠãŒã¶ãŒã¯ãèŠèŽè
ã®ããªãã®éšåãå ããŠããŸãã ãã®äžçã§ã¯ç§ãã¡ã¯çããŠããŸãã
ãã®ã¿ãã¯é »ç¹ã«è¡šç€ºãããŸããïŒ ããã¯ãRAMãšå€ãã³ã³ãã¥ãŒã¿ãŒãã»ãšãã©ãªãäžè¬ãŠãŒã¶ãŒã®å Žåã«æ£ç¢ºã«èµ·ãããŸãã
ã©ããã åé¡ã¯èª°ã«ãç§å¯ã§ã¯ãããŸããã圌ãã¯3幎åã«ç©æ¥µçã«ãããšæŠãå§ããŸããã ãã以æ¥ããããã¯ããŸããŸãªæ¹æ³ã§åŸã
ã«ç· ãä»ããããŠããŸããã 2016幎ããã«Stack Overflowãè¡ã£ãäŸã玹ä»ããŸãã ããã¯éåžžã«åçŽãªã¹ããããã§ãã ããã¯ã¿ã€ãã«ãæŽæ°ããã ãã§ããã®é¢æ°ã®æåŸã®èµ·åããçµéããæéãèšå®ããŸãã çæ³çã«ã¯äœãå
¥æãã¹ãã§ããïŒ ã¿ã€ãã«ã®100ããªç§ããšã«+ -100ãšèšè¿°ããå¿
èŠããããŸãã ã©ãããŒã
ããããéããŠéããšã©ããªããŸããïŒ èª°ããããã«ééããŸãããïŒ Stack Overflowã«è³ªåããããŸããïŒãªãCookie Clickerãããã¯ã°ã©ãŠã³ãã¿ãã§æ©èœããªããªãã®ã§ããïŒ ããã¯ããã©ãŠã¶ãŒã§ã®CPU䜿çšéãåæžããããšãç®çãšããæåã®Chromiumã€ãã·ã¢ããã®1ã€ã§ããã ãã®ã¢ã€ãã¢ã¯ããŠãŒã¶ãŒãä»ã¿ãã䜿çšããŠããªããã°ãä»ã¯ãããå¿
èŠãšããªããšããããšã§ãã-ããã«JSãä»ããŸãããã
ãã©ãŠã¶ã¯ããã®ã¿ãã®CPUè² è·ãçŽ1ïŒ
ã«ç¶æããããšããŸã-ããããçš®é¡ã®ã¿ã€ããŒãJSå®è¡ãªã©ã®äžæåæ¢ãéå§ããŸããããã¯æããæªæ¥ã®æåã®ã¹ãããã®1ã€ã§ãã
ãã©ãŠã¶ã§ãã°ãããããšãããã¯ã°ã©ãŠã³ãã¿ãããŸã£ããæ©èœããªããªããšããç¶æ³ã«ãªããŸãã ããã¯ç§ã話ããŠããæããæªæ¥ã§ãã ååã®BlinkOnã§çºèšããChromiumã®èšç»ã«ãããšã2020幎ã«ã¯ããããäºå®ã§ããã¿ããããŒãããããã¯ã°ã©ãŠã³ãã®å Žåã¯äœãããŸããã ããã«ã¯åžžã«æºåãå¿
èŠã§ãã
Yandex.Browserã§ã¯ããã®ãããªåé¡ãåŠçããŸããããããŸãæ確ã«è§£æ±ºãããWebå
šäœãç Žå£ããããšã¯ãããŸããã§ããã ããã»ããµã®ãã³ãŒãããªãã«ãããããªã«ãŒãã®ãã³ãŒãã®ã¿ãæ®ãçãšãã¢ãŒããäœæããŸããããŸããFPSãäžããçŸåšäžèŠã§ãŠãŒã¶ãŒãããããªãŒãç¯çŽããå¿
èŠã®ããã¢ãã¡ãŒã·ã§ã³ãç¡å¹ã«ããŸãã ããã«ãããçŽ1æéã®ããããªãŒå¯¿åœã延é·ãããŸããã ixbtãªã©ã checkedãªã©ã誰ã§ããã§ãã¯ã§ããŸã ã
Kostyaãããªãã¯ãŠã§ãããå£ããããäžéšã®ãŠãŒã¶ãŒãå©ãããããã£ãšè³¢ããã®ã¯æãã€ããªãã£ããšèšã人ããããšæãã ããŒãã³ã¢ãè¿œå ïŒ ãã©ãŠã¶ã¯ã©ã®ããã«ããŒãžãæç»ããŸããïŒ
ç°¡åã«èšãã°ãã¬ã€ã€ãŒã®æŠå¿µã¯ããã©ãŠã¶ãŒãããŒãžãã¬ã€ã€ãŒã«åå²ããŠåå¥ã«æç»ããããšããããšã§ãã ããã¯ãäžéšã®ã¢ãã¡ãŒã·ã§ã³ãå®è¡ãããéçãªãã®ã匷å¶çã«åæç»ããªãããã«ããããã«è¡ãããŸãã ãã©ãŠã¶ã¯ãããç°ãªããã¥ãŒãªã¹ãã£ãã¯ã§è¡ããŸãã ããšãã°ããããªèŠçŽ ãéžæããŠå¥ã®ã¬ã€ã€ãŒã«å
¥ããããšããŸããããã¯ãæããã«è¿
éãã€é »ç¹ã«åæç»ãããŸãã ãããŠããããã©ããã«è¡šç€ºãããå Žåããã®äžã®ãã¹ãŠãåæç»ããå¿
èŠã¯ãããŸããã
ããã«ãåã¬ã€ã€ãŒã¯256 x 256ã®é·æ¹åœ¢ã®ã¿ã€ã«ã«åå²ãããŠããŸããã€ã³ã¹ãã¯ã¿ãŒã§ã¯ããã®ãããªãã®ãèŠãããšãã§ããŸãã ããããã®ã¿ã€ã«ã«åå²ããããã¬ãŒã ããããŸãã
ããã¯äœã§ããªãå¿
èŠãªã®ã§ããïŒ ãŸããã¬ã³ããªã³ã°ã®åªå
é äœã決å®ããŸãã ç§ãã¡å
šå¡ãæã巚倧ãªãœãŒã»ãŒãžãããå ŽåããŠãŒã¶ãŒãViewPortã§ä»æã£ãŠãããã®ã ããèŠãã®ã§ããã°ããªãç§ãã¡ã¯ãã¹ãŠãããæãå¿
èŠãããã®ã§ããïŒ
ãã®ã¢ãããŒãã䜿çšããŠãæåã«ViewPortã§ãŠãŒã¶ãŒã«è¡šç€ºãããŠãããã®ã ããæç»ãã次ã«ã¿ã€ã«ã®åšãã1ã€æç»ããŠããã¹ã¯ããŒã«ã®æ¹åã«æç»ããŸãã ãŠãŒã¶ãŒãäžã«ã¹ã¯ããŒã«ããå Žå-äžã«æããäžã«ã¹ã¯ããŒã«ãã-äžã ããããã¹ãŠã®ã¿ã€ã«ã¯ããããã®ã¿ã€ã«ã«å²ãåœãŠããããããããæç»ã§ããå Žåã«ã®ã¿æç»ãããŸãããã®åŸããŠãŒã¶ãŒã¯ããããèŠãããšãã§ããŸãã ãŸãã¯å€å決ããŠã
ãŸããé害ãæã€å€ãã®äººã«åœ¹ç«ã¡ãŸãã ãŠãŒã¶ãŒãããŒãžãéããŠäœåãéžæãããã¹ãŠãåæç»ããå¿
èŠããªããšããŸãã 以åã®ã¬ã³ããªã³ã°ã®ã»ãšãã©ãæ®ãããšãã§ããŸãã ããã§6æã®ã¿ã€ã«ãåæç»ããŸãããã¹ãŠãæ£åžžã«ãªããŸãã
ãã®ã¬ãã«ã§ã¯ãããã€ãã®éåžžã«æåããæé©åãè¡ãããŸããã ããšãã°ãChromiumã¯2017幎é ã«ãã®ãããªæé©åãè¡ããŸããã
ã¬ã³ããªã³ã°ãå°ããå Žåã¯ãããã ããè¡ããŸãã ãã®åŸãã«ãŒãœã«ãç¹æ»
ããã«ãŒãœã«é åã®ã¿ãåæç»ããŸããããã®ã¿ã€ã«ã®é åå
šäœã¯åæç»ããŸããã ãã¹ãŠãåæç»ããªãããã«ãCPUã倧å¹
ã«ç¯çŽããŸãã
ãŸããã¡ã¢ãªã®ç¯çŽã«ã圹ç«ã¡ãŸãã ããã§åé¡ã¯äœã§ããïŒ å
šäœãçœãé·æ¹åœ¢ã 256 x 256ãã¯ã¹ãã£ããã¯ã»ã«ããã4ãã€ãã«ãªããšæ³åããŠãã ããã ãã®é åã¯ã座æšãå¹
ãé«ããè²ã®5ã€ã®æ°åã§ãšã³ã³ãŒãã§ããããã«èŠããŸããã
Chromiumã§ã¯ãã¢ãã¯ãé åã®æé©åãè¡ãããŸããã ãã©ãŠã¶ããã®é·æ¹åœ¢ã«ã¬ã³ããªã³ã°ããªãããšãå®å
šã«ã¢ãã¯ãã§ãããéæã§ã¯ãªããä»ã®æ¡ä»¶ãæºãããŠããããšãç解ããŠããå Žåããããªã«ãŒãã«æ瀺ããŸã-çœãé·æ¹åœ¢ãæç»ãããã¯ã¹ãã£å
šäœãéžæããªãã§ãã ããã
ããã§ä»ã«æé©åã§ãããã®ã¯äœã§ããïŒ æ®ãã®ã¿ã€ã«ãèŠããšãå°ããªã³ã³ãã³ããšçœãè²ã®å€§ããªé åããããŸãã Yandex.Browserã§ã¯ãããã«ã€ããŠèããã¢ãããã£ãã¿ã€ã«ãšåŒã°ããã¡ã«ããºã ãäœæããŸããã
1ã€ã®å°ããªé·æ¹åœ¢ãã¿ã€ã«ããããŸãã ã¿ã€ã«ã®äžå€®ã«ã¯ã»ãšãã©ã³ã³ãã³ãããããŸããã ç§ãã¡ã¯ãããéžæãããã®ããäžã«ãã¯ã¹ãã£ãŒãäœããŸãã ä»ã®ãã¹ãŠããããªã«ãŒãã«ã€ããŠè©±ããŠããããã€ãã®é åã«åå²ãããŠããŸãããã®ãµã€ãºã®çœã§æç»ããã ãã§ãã
ããŒãžã¯ãèµ€ã§åŒ·èª¿è¡šç€ºãããŠãããã¹ãŠã®ãã®ã®ä¿åãéå§ããŸãã ããè€éãªããŒãžã§ã¯ããã®ããã«èŠããŸãã
ãŸã å€ãã®ã¬ã€ã€ãŒããããåã¬ã€ã€ãŒã¯ãã®ããã«æãããŠããããšãç解ããããšãéèŠã§ãã åã¬ã€ã€ãŒã§ãããçšåºŠã®ã¡ã¢ãªãç¯çŽã§ããŸãã ãã®ã¢ãããŒãã«ããããã¹ãŠã®ãŠãŒã¶ãŒã®å¹³åã§ãããªã¡ã¢ãªã®çŽ40ïŒ
ãç¯çŽã§ããŸããã
ãã£ãšããŒãã³ã¢ïŒ 圌ãã¯ããã§å°ãã®ã¡ã¢ãªãç¯çŽãããŠã§ãããç Žå£ãããŸããããŠã§ããããã«ãç Žå£ãããŸãããïŒ
Chromiumã«ã¯ããªã·ãŒã®ãããªãã®ããããŸãããŠãŒã¶ãŒãããã¯ã°ã©ãŠã³ãã¿ãã䜿çšããªãå ŽåããŠãŒã¶ãŒãã¿ããæ®ããå Žåããããã¯å¿
èŠãããŸããã ã¡ã¢ãªããªããªã£ãŠãã©ãŠã¶ã暪ã«ãªã£ãå ŽåããŠãŒã¶ãŒãé·ãé䜿çšããŠããªãæãå€ãã¿ããåããããã匷å¶çµäºããŸãã 圌女ã¯ã€ã³ã¿ãŒãã§ãŒã¹ã«æ®ããŸãããããã»ã¹ã¯ããååšããããã¹ãŠã®JSã¯æ»ã«ãŸãã ããã¯å€§äžå€«ã§ããïŒ ããã³ããšã³ãããŒãã£ãŒã§ãã®ãããªè³ªåããããäœãããŠããã®ïŒã以å€ã®çããæåŸ
ããã®ã¯å¥åŠã§ãã
ãã®åŸãããã¯ããŸãè¡ããŸããã§ããã Chromiumããã°ããã®å®éã®ã³ã¡ã³ãã¯æ¬¡ã®ãšããã§ããããªãã¯ç§ã®ãã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ãå£ããŸãããããçš®ã®ã²ãŒã ããããŸãã-ãããŠããããããã¯ç¶æ
ããããŸããã ã¢ã³ããŒããã³ãã©ãŒãæ©èœããªãã£ãããšãç解ããããšãéèŠã§ãããã®ã¿ããé
眮ããã ãã§ãã ãã®åŸããŠãŒã¶ãŒã¯ããã«æ»ããäœãèµ·ãããªãã£ãããã«ãããã¯ãŒã¯ãããªããŒãããŸãã
ãã®åŸããã®ã¢ãããŒãã¯äžæçã«æŸæ£ãããããææ
®æ·±ãçå£ãªã¢ã€ãã¢ãæãã€ããŸããã 圌ãã¯åœŒå¥³ãæšãŠãšåŒã³ãŸããã
ãã€ã³ãã¯äœã§ããïŒ ããã¯ã¿ãã®åé€ãšåãã§ãããå¶åŸ¡ã®ã¿ã§ãã ã¹ããŒãã¯ãŒãPage Lifecycle APIãšåŒã°ããŸã ã ã¿ããããããŠãŒã¶ãŒãé·æéã¿ãã衚瀺ããŠããªãå Žåãã¿ãã¯ããªãŒãºç¶æ
ã«ãªããŸãã ãã©ãŠã¶ã¯ã€ãã³ãäžã«æ¬¡ã®ããã«èšããŸãïŒä»ç§ã¯ããªããåãããŠããŸãã ã€ãã³ãåŠçåŸãäœãå®è¡ãããŸããã å¿
èŠãªããšãè¡ããæºåãããŸãã
ãã®åŸãåéã€ãã³ããéããŠåçµç¶æ
ãçµäºã§ããŸãããããããäœãèµ·ãããŸããã§ããã ãŸãã¯ããã©ãŠã¶ãæ¬åœã«ã¡ã¢ãªãããã«è§£æŸããå¿
èŠãããå Žåã¯ããããååŸããŠåŒ·å¶çµäºããŸãã ãããããŠãŒã¶ãŒããã®ã¿ãã«æ»ã£ãå ŽåãããããªããŒãããããã¥ã¡ã³ãã®å»æ£ãã£ãŒã«ããèšå®ããŸãã
çŸæç¹ã§ã¯ããããã®ã€ãã³ãããã§ã«ãµãã¹ã¯ã©ã€ãããŠãã£ããããäœããã®æ¹æ³ã§åŠçã§ããŸãã ã¿ããæ¬åœã«åé€ãããŠããå Žåãç Žæ£ããããã£ãŒã«ãã確èªã§ããŸãã ããã¯ãç Žæ£åŸã«åŸ©å
ãããããšãæå³ããŸãã 以åã®ç¶æ
ã埩å
ã§ããŸãã
Yandex.Browserã§ç§ãã¡ã¯æ°å¹Žåã«èããŸããïŒè€éãªåºæ¬çãªã¢ãããŒãã䜿çšããªãçç±ã 圌ãã¯åœŒãäŒæ¢ç¶æ
ãšåŒã³ãŸããã
ãã€ã³ãã¯äœã§ããïŒ ããã€ãã®ã¿ããããçš®ã®JSãå®è¡ãããŠãããããçš®ã®ç¶æ
ããããŸãã ã¿ãããšã«åå¥ã®ããã»ã¹ãäœæãããŸããããã§ã¯ãããªãåçã§ããããã§ã¯ãã©ãŒã ã«äœããæ®ããŸãã Hibernateãå°çããããã»ã¹ã¯ãããŸããã ç§éã¯çããããåŸãã ãããããããã®ã¿ãã«åãæ¿ãããšãããã»ã¹ãæ»ããç¶æ
å
šäœãé
眮ããããããªã¯é©åãªç¬éããåçããç¶ãããã£ãŒã«ãå
ã®ãã¹ãŠã®ããã¹ãã¯ãã®ãŸãŸæ®ããŸãã
ç§ãã¡ã¯äœãããŸãããïŒ åã¬ã³ãã©ãŒå
ã«ã¯3ã€ã®æãéèŠãªãã®ããããŸããJSå
šäœãå®è¡ããV8ãDOMå
šäœãä¿åããBlinkãããã³ãã¹ãŠãã¿ããªã©ã§æ¥ç¶ããããã®äœããã®ãã©ãŠã¶ãŒãã€ã³ãã£ã³ã°ã§ãã
ããšãã°ããµã³ãã«ãèããŠã¿ãŸãããã ããã§ãonloadãçºçããã®ãåŸ
ã¡ãDOMããªãŒã«æ°ããdivèŠçŽ ãè¿œå ããŸãã ãã©ãŠã¶ã®å Žåã次ã®ããã«ãªããŸãã
åœç¶ãDOMããªãŒããããããã€ãã®ãã£ãŒã«ããé¢é£ãããªããžã§ã¯ããããããã®ãããªãšã³ãã£ãã£ããããŸãã
V8ã§ã¯ãåããŒãã®ç¶æ
ãä¿åããããããã®ããŒãã¯ãã€ã³ããŒã®ã¬ã€ã€ãŒãä»ããŠç¹æ»
ãªããžã§ã¯ãã«é¢é£ä»ããããŸãã ç§ãã¡ã¯äœãããŸãããïŒ V8ããã·ãªã¢ã©ã€ã¶ãŒãååŸããV8ã®ç¶æ
å
šäœãã·ãªã¢ã©ã€ãºããé¢é£ãããã¹ãŠã®ãªããžã§ã¯ããBlinkã§èŠã€ããããã«DOMããªãŒå
šäœãä¿åããŠã·ãªã¢ã©ã€ãºãããã£ã¹ã¯ã«æžã蟌ã¿ãå§çž®ããã³æå·åããã·ãªã¢ã©ã€ã¶ãŒãäœæããŸããã ãããŠããã®ãããªã¹ãããã·ã§ããããå埩ãããããã©ãŠã¶ã«æããŸããã ã€ãŸãããŠãŒã¶ãŒããã®ãããªã¿ãã«ç§»åãããšããã®ã¿ããå±éãã解èªããŠãŠãŒã¶ãŒã«è¡šç€ºããå®å
šã«åŸ©å
ããŸãã ïŒ Hibernateã«é¢ããå¥ã®æçš¿ - çŽ ïŒ
çŸåšãHibernateã¯å®å®ããå
šå¡ã«å
¬éãããŠãããåãŠãŒã¶ãŒãå¹³å1ã€ãŸãã¯2ã€ã®ã¿ããä¿åã§ããããã«ãªã£ãŠããŸãã ã€ãŸãã圌ã¯å¹³åããŠåžžã«1ã€ã®ã¿ãããŸãã¯ãããã2ã€ã®ã¿ããä¿åããŠããŸãã ããã«ããã10åãè¶
ããã¿ããæã£ãŠãããŠãŒã¶ãŒã®ã¡ã¢ãªãç¯çŽãããŸã-ããªããšåãã§ãããç§ãã¡ã¯ä»£è¡šã§ã¯ãããŸããã
ãã©ãŠã¶ãã©ã®ããã«æå©ããããããšããŠããã®ãã説æããŸããããä»åºŠã¯åèªããµã€ããé«éåããããã©ãŒãã³ã¹ãæ¹åããããã«äœããããããšãã§ããŸãã ä»æ¥ããã«æ¥ãŠãããããšãã§ããŸãã
ãŸããã¡ã¢ãªã®åé¡ããããã©ãããç解ããå¿
èŠããããŸãã
ç¹å®ã®çç¶ããããŸãããµã€ããå£åãå§ãããããã§ãŒãã衚瀺ãããŸãã éåžžãããã¯ãã¬ããŒãžã³ã¬ã¯ã¿ãŒãããªã¬ãŒãããå
šäžçãåçµãããäœãæç»ãããªãããšãæå³ããŸãã ãŸãã¯ããµã€ãã®é床ã絶ããäœäžããããšããããŸã-ãããèµ·ãããŸãã
åé¡ããããã©ãããç解ããå¿
èŠããããŸãã JSã¡ã¢ãªã§äœãèµ·ããããèŠãŠã¿ãŸãããã
圌女ãååŸã«ãžã£ã³ãããããç¶ç¶çã«æé·ããå Žåãããã¯è¯ãçç¶ã§ã¯ãããŸããã ãŸãã¯ç¶ç¶çã«æé·ããŠããŸãã
ãã®å ŽåãDevToolsã䜿çšããŠãã€ã§ãã¹ãããã·ã§ãããååŸã§ããŸãã JSã®ãªãŒã¯ã«æ©ãŸãããŠãã人ã¯ããŸããïŒ èª°ããç¥ããªãå ŽåãJSã§ãªãŒã¯ãçºçããå¯èœæ§ããããŸãã
ããšãã°ãããªãŒã«æ¿å
¥ãããŠããªãããŒããè¿œå ããã°ããŒãã«å€æ°ããããŸãã ããªãã¯ããããå¿ããŠããããã圌ãã¯æ°çŸãããã€ãããããã¯ã¡ã¬ãã€ãããé£ã¹ãŠããããšãããããŸãã
å³å¯ã«èšãã°ããã®ãããªåãé¢ãããããŒããã©ããããã¯æ確ã§ã¯ãããŸããã ããããããªãŒããåŒãåºããŠãããæ¿å
¥ãçŽãããšãã§ããŸãã éåžžãåçã®ç¶æ
ãŸãã¯äœãä»ã®ãã®ã圌ãã«æ®ã£ãŠããããã§ãã ãããã£ãŠãããããèŠã€ããŠåé¡ãåŠçã§ããŸãã
ã¿ã€ã ã©ã€ã³ã§ã¡ã¢ãªå²ãåœãŠã確èªããããšãã§ããŸãã äœç³»çãªéé¢ããããäœããããã«ããªãå Žå-ãããæªãå
åã§ãã誰ãããããç解ããŠãããšæããŸãã
ãããŠãã¿ãã®ã¬ã€ã€ãŒã§éã¶ããšãã§ããŸãã ãã©ãŠã¶ãŒã¯éåžžããã®ç¹ã§ãã¥ãŒãªã¹ãã£ãã¯ã䜿çšããŠåäœããŸããé »ç¹ã«å€åãããšèŠãªããããªããžã§ã¯ããå¥ã
ã®ã¬ã€ã€ãŒã«åé¢ããããšããŸãã ããããæã«ã¯ããŸãããŸãããããå€ãã®ã¡ã¢ãªãæ¶è²»ããã¬ã€ã€ãŒãããããããããšãããããŸãã ãã®ãããªç¶æ³ããããã©ãããåžžã«ç¢ºèªããäžéšã®ã¬ã€ã€ãŒãåé€ããŠããã®ã¬ã€ã€ãŒãå æããŠããã¡ã¢ãªéã確èªã§ããŸãã
åé¡ã®å¥ã®å±€ã¯ããã©ãŒãã³ã¹ã§ãã setTimeoutã¯ãã¢ãã¡ãŒã·ã§ã³ã«ã¯é©ããŠããŸããã ãã©ãŠã¶ãããŒãžãã¬ã³ããªã³ã°ããæ¹æ³ã§ã¯æ©èœããŸããã ãã§ãŒãºã§åäœããªãå ŽåããããŸãããã©ãŠã¶ã¯ãã¬ãŒã ãèŠæ±ããŸããããsetTimeoutãåäœããªãã£ããããã¢ãã¡ãŒã·ã§ã³ã¯ãŸã ãããŸããã ãŸãã¯ãäœãæç»ããå¿
èŠããªãå Žåã§ãæ©èœããŸãã ãŠãŒã¶ãŒã¯éåºããŸãããããŸã ããã¯ã°ã©ãŠã³ãäœæ¥ãæ®ã£ãŠããŸãããsetTimeoutã䜿çšããŠäœæ¥ããŸãã
ããã¯ããã©ãŠã¶ããã®ããŒãžãæç»ããå¿
èŠãããå Žåã«ã®ã¿ã³ãŒã«ããã¯ãåŒã³åºãæ£ããã¢ãããŒãã§ãã
ãŸãããã©ãŠã¶ã1ç§ããã60ãã¬ãŒã ãæç»ããå Žåãåãã¬ãŒã ã«çŽ16ããªç§ãå¿
èŠã§ããããšãæãåºããŠãã ããã
ãŸããã¡ã€ã³ã¹ããªãŒã ã16ããªç§ããé·ãå æãããšããã¬ãŒã ã¹ããããä¿èšŒãããŸããããã¯ãŠãŒã¶ãŒã«ãšã£ãŠããªãäžå¿«ãªãã®ã§ãããµã€ããåãå§ããŸãã ãããã£ãŠããã¹ãŠã®ããŒãã¯ãŒã¯ã¯ããã¯ã°ã©ãŠã³ãã¹ã¬ããã«æ£ããé
眮ãããåçŽã«çµæãè¿ãããŸãã
ãŸãã¯ãå¥ã®ã¢ãããŒãã¯ãã€ã¯ãã¿ã¹ã¯ã䜿çšããããšã§ãã ã¿ã¹ã¯ãã¥ãŒãäœæãããã°ããããŠããã¯ã©ãŒã¿ãçµäºãããŸã§åŠçãããã©ãŠã¶ã«éãã«ããŒãžãæç»ãããŸãã
åœç¶ãæ°ããã¬ã€ã€ãŒãè¿œå ã§ããŸãã ãã©ãŠã¶ã¯ãã¥ãŒãªã¹ãã£ãã¯ã«åºã¥ããŠåäœããå¿
èŠãšæãããã¬ã€ã€ãŒãéžæããããšããŸãã ãã ãããã®èŠçŽ ãä»ããã¢ãã¡ãŒã·ã§ã³åãããããšãããã£ãŠããå Žåã¯ãå¥ã®ã¬ã€ã€ãŒã§ãã®èŠçŽ ãéžæããå¿
èŠãããããšããã©ãŠã¶ãŒã«æ瀺çã«éç¥ããããšããå§ãããŸãã ãã®åŸãããå¹ççã«æç»ãããŸãã
ææ°ã®èå³æ·±ãã¢ãããŒã-æå¥ãèšãã åé¡ãããå Žåã¯ãæ¥ãŠè©±ãããããšã¯åžžã«åœ¹ç«ã¡ãŸãã ãã¶ãããã®åé¡ã¯ç°¡åã«å¯ŸåŠã§ãããäºãã«å©ãåãã§ãããã
å°ãã®èæ¯ã ãã®æ©èœã¯çŸåšæ©èœããŠããŸãã æ€çŽ¢ãšã³ãžã³ããŒãžã®éçºããŒã ããã£ãŠããŸããã æåã®ã¹ããããã®ã¬ã³ããªã³ã°æéãªã©ã®ã¡ããªãã¯ããããŸãã ãŠãŒã¶ãŒãã¯ãªãã¯ããå¿
èŠã®ããæåã®ãªã³ã¯ã以åã«è¡šç€ºãããã®ãªã³ã¯ãæ£ããçããæäŸããå¯èœæ§ãé«ãå Žåãã§ããã ãæ©ããªã³ã¯ããããšããå§ãããŸãã 圌ãã¯ãã£ãŠããŠãä»åºŠã¯ã©ãã«ãããŠã¹ããŒããäžããããšãã§ããããšå°ããŸããã
調æ»ããæ§èœãã¹ããå®æœãããããã¿ã€ããäœæããŸããããµã€ããæåã«äœãæç»ããããæããŠãããã°ããããã§ããããšãããããŸããã ãã¹ãããŠãããã©ãŒãã³ã¹ãåäžããããšã確èªããŸããã çŸåšãç§ãã¡ã¯ãããå°æ°ã®èŽè¡ã®ããã«å®çšŒåã§ãã¹ãããŠããŸãã ç§ãã¡ã¯ãããã©ããªãã®ããèŠãŠããŸãã ã楜ãã¿ã«ã
äžçã¯éæ¢ããŠããŸããã ãŠãŒã¶ãŒã¯ãŸããŸã欲ãå§ãããã©ãŠã¶ã¯å€åãããŠã§ãã¯å€åããŠããŸãã ããã¯æ£åžžã§ãã ç§ãã¡ã¯ãé£æåã®æ©èœãäœãã ãã§ãªããã³ã³ãã³ãã®æ¶è²»ã«é¢ããŠæé«ã®äœéšãåŸãããã«ããããæ¹æ³ã§ãŠãŒã¶ãŒãæ¯æŽããããšãè©Šã¿ãŠããŸãã ãããŠãäžè¬çãªãã©ãŠã¶ã§ã®å€æŽã«åžžã«åããå¿
èŠããããŸãã åœç¶ãåé¡ãããå Žå-æ¥ãŠãç§ãã¡ã¯ãäºãã«è©±ãåããå©ãåãæºåãã§ããŠããŸãã
ããã§ãããŸããŸãªäŸ¿å©ãªãªã³ã¯ãéããŸããã