äžéšã®ããã°ã©ããŒã¯ã;ããå ¥ããŸã åã¹ããŒãã¡ã³ãã®æåŸã«ãäžéšã¯å³å¯ã«å¿ èŠãªå Žåã®ã¿ã äœåãªã;ããè¿œå ãããã®ããããŸãããã»ãšãã©ã¯äžéã®ã©ããã«ãããŸã æäœçãªçç±ããã
åžžã«ã;ããå ¥ããŠã åã¹ããŒãã¡ã³ãã®æåŸã«ãããã€ãã®æ§æãèªæãªæ¹æ³ã§è§£æãããŸãã ã;ãã«é¢ãã奜ã¿ã«é¢ä¿ãªããèšèªãå°éçã«äœ¿çšããã«ã¯ããã®ãããªè§£æã®èŠåãç¥ã£ãŠããå¿ èŠããããŸãã 以äžã®ããã€ãã®ç°¡åãªã«ãŒã«ãæãåºããŠãããã°ã©ã ãã©ã®ããã«è§£æãããããç解ããèªåæ¿å ¥ã;ãã®ãšãã¹ããŒãã«ãªããŸãã JavaScriptã§ã
TKã蚱容ãããå Žå
ECMAscriptä»æ§ã§æå®ãããŠããæ£åŒãªææ³ã§ã¯ãã;ã åæŒç®åã®æ«å°Ÿã«ãããŸãã do-whileã¹ããŒãã¡ã³ãã¯æ¬¡ã®ãšããã§ãã
doã¹ããŒãã¡ã³ãwhileïŒåŒïŒ;
TKã¯ãvarã¹ããŒãã¡ã³ããåŒã¹ããŒãã¡ã³ãïŒã4 + 4;ããŸãã¯ãfïŒïŒ;ããªã©ïŒãcontinueãreturnãbreakãthrowã¹ããŒãã¡ã³ãããã³ãããã¬ãŒã¹ããŒãã¡ã³ãã®æåŸã®ææ³ã«ã衚瀺ãããŸãã
空ã®ã¹ããŒãã¡ã³ãã¯ã;ãã§ãããjavascriptã®æ£ããã¹ããŒãã¡ã³ãã§ãã ãã®ãããã;;;ã æå¹ãªããã°ã©ã ã§ããã3ã€ã®ç©ºã®ã¹ããŒãã¡ã³ããšããŠè§£æããã3åã¯å®è¡ãããŸããã
å°ãªããšãæ§æçã«ã¯ã空ã®ã¹ããŒãã¡ã³ãã圹ç«ã€å ŽåããããŸãã ããšãã°ãç¡éã«ãŒãã®å ŽåããwhileïŒ1ïŒ;ããšèšè¿°ã§ããŸããã»ãã³ãã³ã¯ç©ºã®ã¹ããŒãã¡ã³ããšããŠè§£æãããwhileã¹ããŒãã¡ã³ããæ§æçã«æå¹ã«ãªããŸãã TKããªããšãã«ãŒãæ¡ä»¶ã®åŸã«æŒç®åãå¿ èŠã«ãªããããwhileã¹ããŒãã¡ã³ãã¯äžå®å šã«ãªããŸãã
æåŸã«ãã;ã ã«ãŒãã§ã¯ãforïŒExpression; Expression; ExpressionïŒOperatorãã®åœ¢åŒã§äœ¿çšãããŸãããã¡ãããå°æåããã³æ£èŠè¡šçŸãªãã©ã«ã§äœ¿çšã§ããŸãã
ã»ãã³ãã³ãã¹ãããã§ããå Žæ
ECMAscriptä»æ§ã®æ£åŒãªææ³ã§ã¯ãã;ã äžèšã®ãšããã ãã ãããã®ä»æ§ã§ã¯ãå®éã®æ§æ解æãæ£åŒãªææ³ãšã©ã®ããã«ç°ãªãããèšè¿°ããèŠåãæäŸããŠããŸãã ã«ãŒã«ã¯ãå ¥åã¹ããªãŒã ã«æ¿å ¥ãããæ³åäžã®ã;ãã§èšè¿°ãããŸãããããã¯åãªãä»æ§ã¢ãã«ã§ããå®éã«ã¯ãããŒãµãŒã¯æ¬äŒŒã;ããçæããå¿ èŠã¯ãããŸããããã;ã ç¹å®ã®å Žæã§ã®ãªãã·ã§ã³ã®ææ³ãšããŠïŒããšãã°ãECMAscriptã®æ§æ解æãç¹ã«StatementãEOSãEOSnoLBãããã³SnoLBã«ãŒã«ãåç §ïŒã ä»æ§ã§ãæ¿å ¥ãããããšæžãããŠããç®æã¯ãçŸåšã®ã¹ããŒãã¡ã³ããçµäºããããšãæå³ããŸãã
TKã®èªåæ¿å ¥ã®ã«ãŒã«ã¯ã ECMA-262 [pdf]ã®ã»ã¯ã·ã§ã³7.9ã§èª¬æãããŠããŸãã
ãã®ã»ã¯ã·ã§ã³ã§ã¯ã3ã€ã®ã«ãŒã«ãš2ã€ã®äŸå€ã瀺ããŸãã
ã«ãŒã«ã¯æ¬¡ã®ãšããã§ãã
ããã°ã©ã ãææ³äžç¡å¹ãªããŒã¯ã³ã«ééãããšãïŒaïŒãã®å Žæã«æ¹è¡ãããå ŽåããŸãã¯ïŒbïŒç¡å¹ãªããŒã¯ã³ãéãäžæ¬åŒ§ã®å Žåãã;ããæ¿å ¥ãããŸãã ãã¡ã€ã«ã®çµããã«å°éããç°ãªã解éãäžå¯èœã«ãªããšãã;ããæ¿å ¥ãããŸãã ææ³ã§ã[ããã«LineTerminatorããããŸãããããšæžãããŠããå Žæã«è¡æ«èšå·ãå«ããå¶éããããããã¯ã·ã§ã³ãã衚瀺ãããããã;ããæ¿å ¥ãããŸãã
èšãæããã°ããããã®èŠåã¯ãæŒç®åãã;ããªãã§çµäºã§ãããšèšã£ãŠããŸãã ïŒaïŒå³äžæ¬åŒ§ã®åãïŒbïŒããã°ã©ã ã®æåŸãïŒcïŒæ¬¡ã®ããŒã¯ã³ã解æã§ããªãå Žåãããã«ãæ¹è¡ãã¹ããŒãã¡ã³ããç¡æ¡ä»¶ã«å®äºããããã€ãã®å ŽæããããŸãã ãããå®éã«äœãæå³ãããã以äžã§èª¬æããŸãã
äŸå€ïŒã;ã ãforïŒExpression; Expression; ExpressionïŒOperatorãããã³ã;ããšãã圢åŒã®ã«ãŒãããããŒã«æ¿å ¥ãããªã çµæã空ã®ã¹ããŒãã¡ã³ãã®å Žåã¯æ¿å ¥ãããŸããã
ããã¯ãã¹ãŠç§ãã¡ã«ãšã£ãŠäœãæå³ããŸããïŒ
ãŸããã;ã è¡æ«ãäžæ¬åŒ§ã®åãããã³ããã°ã©ã ã®æåŸã§ã®ã¿ãªãã·ã§ã³ã§ãã ããã«ãã;ã 次ã®è¡ã®æåã®ããŒã¯ã³ãåã®ã¹ããŒãã¡ã³ãã®äžéšãšããŠè§£æã§ããå Žåãè¡æ«ã§æ³å®ãããŠããŸããã
ã42; "helloïŒ" "ã¯æå¹ãªããã°ã©ã ã®äŸã§ããã" 42 \ n "helloïŒ" "ïŒwhere" \ n "æ¹è¡ãè¡šãïŒãã" 42 "helloïŒ" "ã¯è¡ã®æãè¿ããèªåæ¿å ¥ãåŒãèµ·ããããããã¯ãååšããªãã ãã¹ããŒã¹ã¯ãããŸããã ãIfïŒxïŒ{yïŒïŒ}ããæå¹ã§ãã ããã§ããyïŒïŒãã¯ã;ãã§çµããããšãã§ããåŒã¹ããŒãã¡ã³ãã§ããã次ã®ããŒã¯ã³ã¯å³äžæ¬åŒ§ãªã®ã§ãã;ã ãªãã·ã§ã³ãæ¹è¡ãªãã«ããããããã
forã«ãŒããšç©ºã®ã¹ããŒãã¡ã³ãã®äž¡æ¹ã®äŸå€ãäžç·ã«èª¬æã§ããŸãã
forïŒnode = getNodeïŒïŒ; node.parent; node = node.parentïŒ;
ã«ãŒãã¯ã芪ã®ãªãããŒããèŠã€ãããŸã§æ¬¡ã®èŠªããŒããé çªã«åŒã³åºããŸãã ããã¯ãã¹ãŠã«ãŒãããããŒã§è¡ããããããã«ãŒãæ¬äœã«ã¯äœãæ®ããŸããã ãã ããã«ãŒãæ§æã«ã¯æŒç®åãå¿ èŠã§ããã空ã®æŒç®åãæ¿å ¥ããŸãã 3ã€ãã¹ãŠãã;ãã§ãããšããäºå®ã«ãããããã ãã®äŸã§ã¯ãè¡æ«ã«ã;ããããããã3ã€ãã¹ãŠãå¿ èŠã§ãã ã«ãŒãããããŒã«æ¿å ¥ãããªããã空ã®ã¹ããŒãã¡ã³ããäœæããŸããã
éå®ã¹ããŒã³
éå®ãããã¹ããŒã³ã§ã¯ãç¹å®ã®å Žæã§æ¹è¡ãèŠã€ããããšãã§ããŸããããããã®å Žæã§æ¹è¡ãããšãããã°ã©ã ã¯åãæ¹æ³ã§è§£æãããŸããããç°ãªãæ¹æ³ã§è§£æã§ããããã§ãã
ææ³ã«ã¯5ã€ã®å¶éãããã¹ãã³ããããŸãããããã¯ãåŸçœ®æŒç®å++ããã³-ãcontinueãbreakãããã³returnã¹ããŒãã¡ã³ãã§ãã breakããã³continueã¹ããŒãã¡ã³ãã«ã¯ãç¹å®ã®ã«ãŒãããå¶åŸ¡ãæž¡ãããã®ãªãã·ã§ã³ã®èå¥åãå«ãŸããå ŽåããããŸãã ãã®æ©èœã䜿çšããå Žåãèå¥åã¯åãè¡ã«ãªããã°ãªããŸããã ããã¯æå¹ãªããã°ã©ã ã§ãã
var cãiãlãquitchars quitchars = ['q'ã 'Q'] charloopïŒwhileïŒc = getcïŒïŒïŒ{ forïŒi = 0; i <quitchars.length; i ++ïŒ{ ifïŒc == quitchars [i]ïŒbreak charloop } / * ...ä»ã®æåã®ã³ãŒã... * / }
getcïŒïŒãå ¥åã¹ããªãŒã ããæåãè¿ãå Žåãããã°ã©ã ã¯ãããèªã¿åããåºåæåãã©ããã確èªããåºåæåã§ããå Žåã¯ãã«ãŒãã®å¶åŸ¡ãæž¡ããŸãã ããŒã¯ãããbreakã¹ããŒãã¡ã³ãã¯ãå åŽã®ã«ãŒãã ãã§ãªããå€åŽã®ã«ãŒãããæãåºãããã«å¿ èŠã§ãã æ¹è¡ã®ã¿ãç°ãªãåãããã°ã©ã ã§ã¯ãåãçµæã¯åŸãããŸããã
var cãiãlãquitchars quitchars = ['q'ã 'Q'] charloopïŒwhileïŒc = getcïŒïŒïŒ{ forïŒi = 0; i <quitchars.length; i ++ïŒ{ ifïŒc == quitchars [i]ïŒbreak ãã£ãŒã«ãŒã } / * ...ä»ã®æåã®ã³ãŒã... * / }
ãã®å ŽåãcharloopããŒã¯ã³ã¯breakã¹ããŒãã¡ã³ãã®äžéšã§ã¯ãããŸããã breakã¹ããŒãã¡ã³ãã¯å¶éãããŠããããããã®äœçœ®ã§ã®æ¹è¡ã«ããã¹ããŒãã¡ã³ããå®äºããŸãã charloopããŒã¯ã³ã¯charloopå€æ°ã®ããã«è§£æãããŸããããã®å Žæã¯å¶åŸ¡ããããbreakã¹ããŒãã¡ã³ãã¯æå³ãããšããã«å€éšã«ãŒãã§ã¯ãªãå éšã«ãŒããçµäºããŸãã
ä»ã®4ã€ã®å¢çä»ãã¹ããŒã³ã®äŸïŒ
// PostfixExpressionïŒ // LeftHandSideExpression [LineTerminatorã¯ãããŸãã] ++ // LeftHandSideExpression [ããã«LineTerminatorã¯ãããŸãã]- var i = 1; ç§ã¯ ++;
ããã«ãããšã©ãŒãã¹ããŒããããi ++ããšããŠè§£æãããŸããã ã¿ãŒãããŒã¿ã¯ãåŸçœ®ã€ã³ã¯ãªã¡ã³ããŸãã¯ãã¯ãªã¡ã³ãæŒç®åãåé¢ã§ããªããããè¡ã®å é ã®ã++ããŸãã¯ã-ãã¯åã®è¡ã®äžéšãšããŠè§£æãããããšã¯ãããŸããã
ç§ã¯ ++ j
ããã¯ééãã§ã¯ãªãããi;ããšããŠè§£æãããŸãã ++ jã " ãã¬ãã£ãã¯ã¹ã®ã€ã³ã¯ãªã¡ã³ããšãã¯ãªã¡ã³ãã¯éå®çãªäžä»£ã§ã¯ãªããããã++ããŸãã¯ã-ããšããããå€æŽããåŒã®éã§æ¹è¡ãçºçããå ŽåããããŸãã
// ReturnStatementïŒreturn [LineTerminator here here] Expressionopt; åž°ã {iïŒiãjïŒj}
ããã¯ã空ã®returnã¹ããŒãã¡ã³ããšããŠè§£æããããã®åŸã«å¶åŸ¡ãå°éããªãåŒæŒç®åãç¶ããŸãã ãã ããèšç»ã©ããã«è§£æãããŸãã
return { iïŒiãjïŒj} ãªã¿ãŒã³ïŒ {iïŒiãjïŒj}ïŒ return {iïŒi ãjïŒj}
returnã¹ããŒãã¡ã³ãã«ã¯åŒã®äžã«ãã€ãã³ãå«ãŸããŠããå ŽåããããŸãããreturnããŒã¯ã³ãšåŒã®å é ã®éã«ã¯ãªãå ŽåããããŸãã ã;ããæå³çã«çç¥ããå Žåãreturnã¹ããŒãã¡ã³ãã®éå®çæã¯äŸ¿å©ã§ããããã¯ã次ã®è¡ãã誀ã£ãŠåŒãè¿ãããšãªã空ã®returnãæžã蟌ãããšãã§ããããã§ãã
é¢æ°åæåïŒaïŒ{ // aããã§ã«åæåãããŠããå Žåãæ»ããŸã ifïŒa.initializedïŒreturn a.initialized = true / * ... ...ãåæåããŸã* / }
continueããã³throwã¹ããŒãã¡ã³ãã¯ãbreakããã³returnã«äŒŒãŠããŸãã
innerloopãç¶è¡// true ç¶ãã innerloop; //ééã£ãŠãã // ThrowStatementïŒthrow [no LineTerminator here] Expression; throw //解æãšã©ãŒ new MyComplexErrorïŒaãbãcãmoreãargsïŒ; // returnãbreakãcontinueãšã¯ç°ãªãã //ã¹ããŒåŸã®åŒãå¿ èŠã§ãã //ãããã£ãŠãäžèšã¯ãŸã£ãã解æãããŸããã æ°ããMyComplexErrorïŒaãbãcãmoreãargsïŒãã¹ããŒããŸãã // true æ°ããMyComplexErrorïŒ aãbãcãmoreãargsïŒ; //ãŸãç // throwãšnewãåãè¡ã«ãããªãã·ã§ã³ã¯ãã¹ãŠæ£ããã§ãã
ã€ã³ãã³ãã¯ECMAscriptããã°ã©ã ã®è§£æã«ã¯é¢ä¿ãªããæ¹è¡ã®æç¡ãåçãããŸãã ãããã£ãŠãjavascriptã®ãœãŒã¹ã³ãŒãããã»ããµã¯ãããã°ã©ã ã®ã»ãã³ãã£ã¯ã¹ã«åœ±é¿ãäžããããšãªããå é ã®ã¹ããŒã¹ïŒæååå®æ°ãé€ãïŒïŒãã«ããã§ããŸãããæ¹è¡ãä»»æã«ã«ããããããã¹ããŒã¹ãã»ãã³ãã³ã«çœ®ãæããããšã¯ã§ããŸããã æå¹ãªããã°ã©ã ã®ã»ãã³ãã£ã¯ã¹ãå€æŽãããããã¡ã€ã€ã¯ã䟡å€ã®ãªãç¡å¹ãªãããã¡ã€ã€ã§ãããå¯äžã®æ¹æ³ã¯å®å šã§æ£ããããŒãµãŒãèšè¿°ããããšã§ãã
returnãbreakãcontinueãããã³++ããã³-ã®åã®æ¹è¡ã¯ã解æã«åœ±é¿ããŸãã ãããã®è£œåã®ã¿ãå¶éãããŠãããããããã°ã©ã ã®èªã¿ããããæ¹åããããã«ãã¹ããŒã¹ãšæ¹è¡ãä»ã®ã©ãã§ãèªç±ã«äœ¿çšã§ããŸãã ç¹ã«ãè«çãç®è¡ãæååé£çµæŒç®åãããªãã«ïŒãŸãã¯æ¡ä»¶ä»ãïŒæŒç®åãããªãªããŸãã¯ãã©ã±ãããä»ããã¡ã³ããŒãžã®ã¢ã¯ã»ã¹ãé¢æ°åŒã³åºããforã«ãŒããswitchã¹ããŒãã¡ã³ããããã³ãã®ä»ã®å¶åŸ¡æ§é ã¯ãã©ãã§ãæ¹è¡ã䜿çšããŠèšè¿°ã§ããŸãã
ä»æ§ã¯æ¬¡ã®ãšããã§ãã
ECMAScriptããã°ã©ãåãã®å®çšçãªã¢ããã€ã¹ïŒåŸçœ®æŒç®åã++ããšã-ãã¯ããªãã©ã³ããšåãè¡ã«ããå¿ èŠããããŸãã returnãŸãã¯throwã¹ããŒãã¡ã³ãã®åŒã¯ãreturnãŸãã¯throwããŒã¯ã³ãšåãè¡ã§éå§ããå¿ èŠããããŸãã breakãŸãã¯continueã¹ããŒãã¡ã³ãã®èå¥åã¯ãbreakãŸãã¯continueããŒã¯ã³ãšåãè¡ã«ãªããã°ãªããŸããã
ã¹ããŒã³ãå¶éãããŠããããã°ã©ãã®æãäžè¬çãªééãã¯ãç¹ã«ã©ãŒãžãªããžã§ã¯ããŸãã¯é åãªãã©ã«ãè¿ãããå ŽåããŸãã¯è€æ°è¡å®æ°ã®å Žåãæ»ãããŒã¯ã³ã®åŸã«è¡ã«æ»ãå€ãé 眮ããããšã§ãã ãã®ãããªæ¹è¡ãã»ãšãã©ã®ããã°ã©ããŒã«ãšã£ãŠäžèªç¶ã§ãããšæããããšããäºå®ã®ãããåŸçœ®æŒç®åãããã³breakãcontinueãthrowæŒç®åã®ãšã©ãŒã¯å®éã«ã¯ãŸãã§ãã
èªåæ¿å ¥ã;ãã®æåŸã®åŸ®åŠã æåã®ã«ãŒã«ã«åŸããã;ããæ¿å ¥ããããã®ç¡å¹ãªããŒã¯ã³ãããã°ã©ã ã«å«ããå¿ èŠããããŸãã ãªãã·ã§ã³ã®ã;ããã¹ãããããå Žåã¯ãã¹ãããã§ããªããªãã·ã§ã³ã§ã¯ãªããã®ãããããšã«æ³šæããŠãã ããã ãã®ã«ãŒã«ã䜿çšãããšãã¹ããŒãã¡ã³ããè€æ°è¡ã«ããã£ãŠã¹ãã¬ããã§ããŸãã
return obj.methodïŒ 'abc'ïŒ .methodïŒ 'xyz'ïŒ .methodïŒ 'pqr'ïŒ ãé·ãæåå\ nããè¿ããŸã +ãã¹ãã¬ãã\ nã +ãè€æ°ã®å Žåã totalArea = rect_a.height * rect_a.width + rect_b.height * rect_b.width + circ.radius * circ.radius * Math.PI
ã«ãŒã«ã¯ãæååã®æåã®ããŒã¯ã³ã«ã®ã¿é©çšãããŸãã ãã®ããŒã¯ã³ãæŒç®åã®äžéšãšããŠè§£æã§ããå ŽåãæŒç®åã¯ç¶è¡ããŸãïŒè§£æãããã«å€±æããŠãïŒã ãªãã¬ãŒã¿ãŒãæåã®ããŒã¯ã³ãç¶è¡ã§ããªãå Žåã次ã®ããŒã¯ã³ãéå§ãããŸãïŒãã®æç¹ã§ãä»æ§ã«ã¯ãæ¿å ¥ãããããšè¡šç€ºãããŸãïŒã
ãã¢ã®æŒç®åAãšBã®äž¡æ¹ãåå¥ã«æå¹ãªå Žåã«ãšã©ãŒãçºçããå¯èœæ§ããããŸãããæåã®ããŒã¯ã³Bã¯Aã®ç¶ç¶ãšããŠãåãå ¥ããããŸãããã®ãããªå Žåãã;ãããªãå ŽåãããŒãµãŒã¯Bãåå¥ã®æŒç®åãšããŠè§£æããŸããããšã©ãŒããŸãã¯äºæããªãæ¹æ³ã§ããã°ã©ã ã解æããŸãã ãããã£ãŠãã;ã ã¹ããããããå Žåãããã°ã©ãã¯æ¹è¡ã§åºåãããæŒç®åAãšBãç£èŠããå¿ èŠããããBã¯Aã®æ«å°Ÿã«ä»å ã§ããããŒã¯ã³ã§éå§ããŸãã
JavaScriptã®ã»ãšãã©ã®æŒç®åã¯èå¥åã§å§ãŸããæ®ãã®ã»ãšãã©ã¯ãvarãããfunctionãããifããªã©ã®ããŒã¯ãŒãã§å§ãŸããŸãã èå¥åãŸãã¯ããŒã¯ãŒãã§å§ãŸããã®ãããªæŒç®åBãããã³æååå®æ°ã§å§ãŸãè¡ã«ã¯ãæå¹ãªæŒç®åAã¯ååšããŸããïŒèšèªã®ææ³ããã®ãã®èšŒæã¯ãèªè ã®ç·Žç¿ãšããŠæ®ãããŠããŸãïŒã
A é¢æ°fïŒxïŒ{return x * x} // TKã®ãªãæŒç®åAã®å Žå //ãããã®äŸã¯ãã¹ãŠæ£ãã解æãããŸã A fïŒ7ïŒ A ãæååã.length
æ®å¿µãªããããªãã¬ãŒã¿ãŒãéå§ããæ¢ã«å®äºããããŒã¯ã³ãç¶ç¶ã§ãã5ã€ã®ããŒã¯ã³ããããŸãã ãããã¯ãïŒããã[ããã/ããã+ããã-ãã§ããå®éã«ã¯ãæåã®2ã€ãåé¡ãåŒãèµ·ãããŸãã
ããã¯ãåžžã«æ¹è¡ãã;ãã眮ãæããããšãã§ãããšã¯éããªãããšãæå³ããŸãã ãªãã¬ãŒã¿ãŒéã
ä»æ§ã«ã¯äŸã瀺ããŸãã
a = b + c ïŒd + eïŒ.printïŒïŒ
ãã£ãå ã®åŒã¯é¢æ°åŒã³åºãã®åŒæ°ãšããŠè§£æã§ãããããèªåæ¿å ¥ã;ãã§ã¯å€æã§ããŸããã
a = b + cïŒd + eïŒ.printïŒïŒ
ä»æ§ã§ã¯ããä»£å ¥æŒç®åãå·Šè§ãã£ãã§å§ãŸãå¿ èŠãããå Žåãåã®è¡ã«æ瀺çã«ã»ãã³ãã³ãé 眮ããããšããå§ãããŸããã ããå³å¯ãªä»£æ¿çã¯ãTKãè¡ã®å é ãããŒã¯ã³ã®çŽåã«èšå®ããããšã§ããããã«ããããããŸãããçãããªã¹ã¯ããããŸãã
a = b + c ;ïŒd + eïŒ.printïŒïŒ
æ¬åŒ§ãŸãã¯è§æ¬åŒ§ã§å§ãŸãæŒç®åã¯ãŸãã§ãããçºçããŸãã
mapãfilterãforEachãªã©ã®ãæ©èœçãªãæäœã¯é åã§ããé »ç¹ã«è¡ããããããè§æ¬åŒ§ã䜿çšããäŸã¯ããé »ç¹ã«è¡ãããŸãã å€ãã®å Žåãå¯äœçšã«å¿ èŠãªforEachãå«ã倧èŠæš¡ãªãªãã©ã«ãäœæãããšäŸ¿å©ã§ãã
[['January'ã 'Jan']] ã['February'ã 'Feb'] ã[ã3æããã3æã] ã['April'ã 'Apr'] ã[ã5æããã5æã] ã['June'ã 'Jun'] ã[ã7æããã7æã] ã[ã8æããã8æã] ã[ã9æããã9æã] ã['October'ã 'Oct'] ã[ã11æããã11æã] ã[ã12æããã12æã] ] .forEachïŒé¢æ°ïŒaïŒ{printïŒ "ç¥èª" + a [0] + "is" + a [1] + "ã"ïŒ}ïŒ ['/script.js' ã '/ style1.css' ãã/ style2.cssã ãã/ page1.htmlã ] .forEachïŒé¢æ°ïŒuriïŒ{ ãã°ïŒãã«ãã¯ã¢ãããšãã£ãã·ã¥ã+ uriïŒ fetch_and_cacheïŒuriïŒ}ïŒ
ä»£å ¥ã§å€§èŠæš¡ãªãªãã©ã«ã䜿çšãããå ŽåããŸãã¯é¢æ°ãæž¡ãããå Žåãã¹ããŒãã¡ã³ãã®å é ã«ã¯è¡šç€ºãããªããããæåã®éãè§æ¬åŒ§ã¯ãŸãã§ãããçºçããŸãã
æåŸã®åé¡ããŒã¯ã³ã¯ã¹ã©ãã·ã¥ã§ãããéåžžã«çŽæçã§ã¯ãããŸããã èŠãŠã¿ãŸãããïŒ
var iãs s = "here is a string" i = 0 /[az.BIZ/g.exec(sïŒ
1è¡ç®ãã3è¡ç®ã§å€æ°ãéå§ãã4è¡ç®ã§rexåç §ãªãã©ã« "/ [az] / g"ãäœæããŸããããã¯azãã°ããŒãã«ã«æ€çŽ¢ããexecã¡ãœããã䜿çšããŠãã®æ£èŠè¡šçŸãæååã§åŒã³åºããŸãã execïŒïŒã®æ»ãå€ã¯äœ¿çšãããªããããã³ãŒãã¯ç¹ã«æçšã§ã¯ãããŸããããå°ãªããšãã³ã³ãã€ã«ãããããšãæåŸ ãããŸãã ãã ããã¹ã©ãã·ã¥ã¯æ£èŠè¡šçŸãéå§ããã ãã§ãªããé€ç®æŒç®åã§ããããŸãã ã€ãŸããè¡4ã®å é ã®ã¹ã©ãã·ã¥ã¯ãåã®è¡ã®ä»£å ¥æŒç®åã®ç¶ç¶ãšããŠè§£æãããŸãã ãããã®è¡ã¯ããiã¯0ã«çãã[az]ã«ããé€ç®ã¯g.execïŒsïŒã«ããé€ç®ã«çããããšè§£æãããŸãã
å®éã«ã¯ãæ£èŠè¡šçŸæŒç®åãéå§ããçç±ã¯ã»ãšãã©ãªãããããã®åé¡ã¯ã»ãšãã©çºçããŸããã äžèšã®äŸã§ã¯ãexecïŒïŒã®åŒã³åºãã®å€ã¯éåžžãé¢æ°ã«æž¡ãããããå€æ°ã«å²ãåœãŠãããŸãããããã®å Žåããè¡ã¯ã¹ã©ãã·ã¥ã§å§ãŸããŸããã ããã§ããäŸå€ãšããŠforEachã¡ãœããããããŸããããã¯ãexecïŒïŒãåŒã³åºããŠè¿ãããå€ã«å¯ŸããŠ[ originalïŒäŸ¿å©ã«äœ¿çš ]ã䟿å©ã«äœ¿çšã§ããŸãã
æŒç®åã+ãããã³ã-ããåé ãšããŠäœ¿çšããŠãå€ãæ°å€åã«å€æããã-ãã®å Žåã«ç¬Šå·ãéã«ããããšãã§ããŸãã è¡ã®å é ã§ã;ãã䜿çšããå Žå ãããã¯ã察å¿ãã2é æŒç®åãããã³åã®æŒç®åã®ç¶ç¶ãšããŠèªèã§ããŸãã ããããããã¯ãã£ãã«åé¡ã«ãªããŸãããæåã®åé æŒç®åã¯regexpãããäžè¬çã§ã¯ãªãããã§ãïŒãŸããå®å šã«èŠããŸããïŒã æ£èŠè¡šçŸãšåæ§ã«ãããã°ã©ããŒãå€ãæ°å€ã«ãã£ã¹ããããå Žåãäœããã®æ¹æ³ã§ãã®å€ã䜿çšããå€æ°ã«å²ãåœãŠããŸãã¯é¢æ°ã«æž¡ããŸãããåé æŒç®åã¯å é ã«ãããŸããã
var xãyãz x = + y; //äŸ¿å© y = -y; //äŸ¿å© å°å·ïŒ-yïŒ; //äŸ¿å© + z; //圹ã«ç«ããªã
ãã®ãããªå Žåã¯ãã¹ãŠãã;ããçç¥ãããšãã»ãã³ãã³ã®ããã«ãã©ã±ããã§è¡ãéå§ããã®ãå®å šãªæ¹æ³ã§ãã æŒç®åã+ããã-ãããŸãã¯ã¹ã©ãã·ã¥ã®ãŸããªã±ãŒã¹ã«ã€ããŠãåãã¢ããã€ã¹ã ãããã£ãŠãTKãã©ãã§ã䜿çšãããŠããªãå Žåã§ããåã®è¡ãã©ã®ããã«å€åãããã«é¢ä¿ãªããè¡ã¯èª€ã£ã解æããä¿è·ãããŸãã
誀解
å€ãã®åå¿è ã®Javascriptããã°ã©ããŒã¯ãã;ã ãã¹ãŠã®å Žæã§ãèªåæ¿å ¥ã«ãŒã«ã;ãã䜿çšããªãå Žåãèšèªã®ãã®ããããã£ã¯ç¡èŠã§ãããšèããŠããŸãã äžèšã®å¶éãããçæã«ãŒã«ãç¹ã«returnã¹ããŒãã¡ã³ãã®ãããããã¯åœãŠã¯ãŸããŸããã ãããŠã圌ãã¯éãããç£åµã«æ £ãããšãæ¹è¡ãæãå§ããèªã¿ããããæ¹åãããšããŠãé¿ããŸãã èªåæ¿å ¥ã;ãã®ã«ãŒã«ãåŠç¿ããŠãä»»æã®ã³ãŒããèªã¿åããæãæ確ãªæ¹æ³ã§ã³ãŒããèšè¿°ã§ããããã«ããããšããå§ãããŸãã
ãã1ã€ã®èª€è§£ã¯ãjavascriptãã©ãŠã¶ãšã³ãžã³ã®ãã°ã«ãããã©ãã§ãã»ãã³ãã³ã®ä¿¡é Œæ§ãé«ããªããäºææ§ãåäžãããšããããšã§ãã ããã¯åã«ããã§ã¯ãããŸããã ãã¹ãŠã®æ¢åã®ãã©ãŠã¶ã¯ãèªåæ¿å ¥ã;ãã«é¢ããŠä»æ§ãæ£ããå®è£ ããŠãããååšããå¯èœæ§ã®ãããã°ã¯ãWebã®åæã®æŽå²ã®éã«é·ãå ¥ã蟌ãã§ããŸãã ãã©ãŠã¶ã®äºææ§ãå¿é ããçç±ã¯ãããŸããããã¹ãŠã®ãã©ãŠã¶ã¯äžèšã®ã«ãŒã«ãå®è£ ããŠããŸãã
ãããã«
ã»ãã³ãã³ãå ¥ããã¹ãã§ããïŒ ããªãã®ããžãã¹ã åçŽã«ãéžæã¯æ å ±ã«åºã¥ããŠè¡ãããã¹ãã§ãããæªç¥ã®æ§æãã©ãããååšããªããã©ãŠã¶ã®ãã°ã«å¯ŸããæŒ ç¶ãšããææã§ã¯ãããŸããã ãããã®ã«ãŒã«ãèŠããŠããã°ãæ£ããéžæã®æºåãã§ããŠããã®ã§ãjavascriptã®ã³ãŒããç°¡åã«èªãããšãã§ããŸãã
ã;ããä»ããªãããšã«ããå Žåãããããéå§ããæŒç®åãããã³ã/ããã+ããã-ãã§å§ãŸãæŒç®åã§ã¯ããã®ãããªæŒç®åãèšè¿°ããå Žåã¯ãéãè§æ¬åŒ§ã®åã«çœ®ãããšããå§ãããŸãã
ã»ãã³ãã³ã«é¢ä¿ãªããå¶éãããçæã®èŠåïŒæ»ãããã¬ãŒã¯ãç¶ç¶ãã¹ããŒãããã³åŸçœ®ã€ã³ã¯ãªã¡ã³ãããã³ãã¯ãªã¡ã³ãæŒç®åïŒãèŠããŠãããŠãã ãããã³ãŒãã®å©äŸ¿æ§ãšèªã¿ãããã®ããã«ãä»ã®å Žæã§è¡ãåå²ã§ããŸãã