JavaScriptã®functionãåºæ¬ãã解説
JavaScriptã«ãããåºæ¬çãªæ§æèŠçŽ ã®ã²ãšã€ã§ãã颿°( function )ã ããŸã掻çšããã°åŠçãç®çããšã«åå²ãããã䌌ããããªåŠçãäœåºŠãæžããªããŠæžãã ããšäŸ¿å©ã§ãã JavaScriptã«ã¯å¿ èŠäžå¯æ¬ ãªé¢æ°ã®å®çŸ©ã®æ¹æ³ãšããããåŒã³åºããŠå©çšããæ¹æ³ãå®éã®ã³ãŒãã亀ããŠè§£èª¬ããŸããJavaScriptã«ãããåºæ¬çãªæ§æèŠçŽ ã®ã²ãšã€ã«é¢æ°ïŒfunctionïŒããããŸãã
颿°ãå©çšããããšã§ç®çããšã«åŠçãåå²ãããã䌌ããããªåŠçãäœåºŠãæžããªããŠæžãããã«ã§ãã颿°ã¯ãJavaScriptã§ããã°ã©ãã³ã°ãããã«ããã£ãŠå¿
èŠäžå¯æ¬ ãªååšã§ãã
ä»åã¯JavaScriptã§é¢æ°ãå®çŸ©ããå®éã«åŒã³åºããŠå©çšããããã®æ¹æ³ãã³ãŒãã亀ããŠè§£èª¬ããŠãããŸãã
JavaScriptã«ããã颿°ïŒfunctionïŒãšã¯
颿°ã¯ãJavaScriptã«ãããåºæ¬çãªæ§æèŠçŽ ã®ã²ãšã€ã§ããããŸãä»ã®å€ãã®ããã°ã©ãã³ã°èšèªã«ãããŠãæšæºçã«åãã£ãŠããåºæ¬çãªæ©èœã§ãã
颿°ïŒfunctionïŒãšã¯ãªã«ã
颿°ãšã¯ãè€æ°ã®åŠçãã²ãšãŸãšãŸãã«ãããã®ã§ããã¡ãœãããšåŒã°ããããšããããŸãã
ãŸããåè¿°ã®éããJavaScriptã«ãããåºæ¬çãªæ§æèŠçŽ ã®ã²ãšã€ã§ãããFunctionåã®ãªããžã§ã¯ããšããŠæ±ãããŸãã颿°ããªããžã§ã¯ããšããŠæ±ãããšãåºæ¥ãã®ã¯JavaScriptç¹æã®ç¹åŸŽã§ãã
颿°ã䜿ãã¡ãªãã
颿°ãå©çšããããšã§ç®çããšã«åŠçãåå²ãããã䌌ããããªåŠçãäœåºŠãæžããªããŠæžãããã«ãªããŸãã
å
šãŠã®åŠçã颿°ã䜿ããã«æžããå Žåãšã颿°ã䜿ã£ãŠæžããå Žåãšã§ã¯ã³ãŒãã®æéãäœåã«ãå€ãããŸããå Žåã«ãã£ãŠã¯äœåã©ãããäœååãäœçŸåã«ãªãããšããããŸãã
颿°ãå®çŸ©ãã
颿°ãæ±ãããã«ã¯ããŸã颿°ãå®çŸ©ïŒäœæïŒããå¿
èŠããããŸããJavaScriptã§é¢æ°ãå®çŸ©ããã«ã¯ããã€ãã®æ¹æ³ããããŸãã
ããã§ã¯ãããã®äžãã代衚çãª3ã€ã®æ¹æ³ã«ã€ããŠè§£èª¬ããŠãããŸãã
颿°å®£èšã§é¢æ°ãå®çŸ©ãã
ãã£ãšã代衚çãªé¢æ°å®çŸ©ã®æ¹æ³ãšããŠã颿°å®£èšãããããŸãã
颿°å®£èšã¯ function 颿°å(åŒæ°) { åŠç } ãšããèšæ³ã§é¢æ°ãå®çŸ©ããŸãã
å®éã®ã³ãŒãã¯æ¬¡ã®ããã«ãªããŸãã
/** åŒæ°ã§æå®ããååã«æšæ¶ãããæååãè¿ã颿° */
function hello1(name) {
var message = "Hello, " + name
return message
}
宣èšã®äžã«ãããåŒæ°ããšããèšèã«ã€ããŠã§ããããåŒæ°ããšã¯é¢æ°ã«æž¡ããŠåŠçã®äžã§ãã®å€ã䜿ãããšãã§ãããã®ã§ãã
ããã§ã¯ãhello1颿°ã®åŒæ°ã«å€æ°nameãæå®ãããŠããããã®å€æ°nameã¯é¢æ°ã®åŠçã®äžã§ãHello, â¯â¯â¯ïŒåŒæ°ã§æå®ããååïŒããšããæååãè¿åŽããããã«çµã¿èŸŒãŸããŠããŸãã
åããããªä»çµã¿ã®åŠçãäœåºŠãå¿ èŠãšãããšãã«åŒæ°ãå©çšããã°ãåŒæ°ã®å€ãå€ããã ãã§åãä»çµã¿ã§ç®åºãããå¥ã®å€ãäœåãååŸã§ããããã«ãªããŸãã
ãŸããå€ãæååãªã©ã颿°ã®å€ã«è¿åŽïŒåºåïŒããåŠçã¯ãäžèšã³ãŒãäžã«ãããããã« return è¿åŽå€ ãšããèšæ³ã§æžããŸããreturnæã¯æžããªããŠãåé¡ãããŸãããããã®å Žåãã®é¢æ°ã¯å€ãäœãè¿åŽããªã颿°ã«ãªããŸãã
颿°åŒã§é¢æ°ãå®çŸ©ãã
JavaScriptã«ãããŠé¢æ°ã¯functionåã®ãªããžã§ã¯ãã§ãã
ãã®ããã颿°ã¯åŒãšããŠå€æ°ã«æž¡ãããšãåºæ¥ãŸããåŒãšããŠé¢æ°ãäœæããèšæ³ãã颿°åŒãšåŒã³ãŸãã
颿°åŒã§é¢æ°ãå®çŸ©ããå®éã®ã³ãŒãã¯æ¬¡ã®ããã«ãªããŸãã
/** åŒæ°ã§æå®ããååã«æšæ¶ãããæååãè¿ã颿° */
var hello2 = function(name) {
var message = "Hello, " + name
return message
}
ãã®ããã« var 倿°å = function(åŒæ°) { åŠç } ãšããèšæ³ã§å€æ°åã®é¢æ°ãäœæã§ããŸããäžèšã³ãŒãã§ã¯ãhello2ãšããååã®å€æ°ã颿°ã«ãªã£ãŠããŸãã
ã¢ããŒé¢æ°åŒã§é¢æ°ãå®çŸ©ãã
åè¿°ã®é¢æ°åŒã«ãã颿°å®çŸ©ãçºå±ãããæ¹æ³ãšããŠãã¢ããŒé¢æ°åŒãçšããæ¹æ³ããããŸãã
ã¢ããŒé¢æ°åŒãšã¯ãECMAScript 2015ïŒES2015ïŒãšãã2015幎ã«å
¬éãããJavaScriptã®æ°ããæšæºã«å«ãŸããèšæ³ã§ããåŸæ¥ã®é¢æ°åŒã®ããã€ãã®èŠçŽ ãçç¥ãããã®ä»ã®çްããªæåã調æŽããåŒã§ãã
ã¢ããŒé¢æ°åŒã§é¢æ°ãå®çŸ©ããå®éã®æ¹æ³ã¯æ¬¡ã®éãã§ãã
/** åŒæ°ã§æå®ããååã«æšæ¶ãããæååãè¿ã颿° */
var hello3 = name => {
var message = "Hello, " + name
return message
}
颿°åŒã§ã¯åŒã®å³èŸºã¯ function(åŒæ°) { åŠç } ãšããèšæ³ã§æžãããŠããŸããã
ã¢ããŒé¢æ°åŒã§ã¯ãã®èšæ³ã®ãã¡ function ããåŒæ°ãå²ãæ¬åŒ§ãªã©ãçç¥ãããŠããŸãïŒãã ãåŒæ°ãè€æ°ããå Žåã«ã¯ãã®æ¬åŒ§ã¯çç¥åºæ¥ãŸããïŒã
ãŸãã颿°ã®åŠçãå²ãã§ããæ³¢æ¬åŒ§ã§ãããããã«ã€ããŠããæ³¢æ¬åŒ§å ã®åŠçãäžè¡ã§ããããšããæ¡ä»¶ãæºããã°çç¥ãå¯èœã«ãªããŸãã
ãã®æ¡ä»¶ãæºããæ³¢æ¬åŒ§ãçç¥ããå Žåã颿°ãå€ãè¿åŽããreturnæã®ãreturnããçç¥ãå¯èœã§ãã
颿°ãåŒã³åºã
åé
ã§é¢æ°ãå®çŸ©ããæ¹æ³ã解説ããŸãããããã颿°ã¯å®çŸ©ããã ãã§ã¯åœ¹ã«ç«ã¡ãŸããã
å®çŸ©ãã颿°ãåŒã³åºããŠå©çšããã«ã¯ã©ã®ããã«æžãã°ããã®ã§ããããã
颿°ã®åŒã³åºãæ¹
颿°ãå®çŸ©ããã«ã¯æ§ã
ãªæ¹æ³ããããŸããã
ãããå®çŸ©ãããšããšç°ãªãã颿°ã䜿çšãããšãã«ã¯åºæ¬çã«ã²ãšã€ã®æ¹æ³ãããããŸããã
// 颿°ã®å®çŸ©
function hello1(name) {
var message = "Hello, " + name
return message
}
// 颿°ã®åŒã³åºã
var result1 = hello1("yamada")
// ã³ã³ãœãŒã«ãžçµæãåºå
console.log(result1)
å®è¡çµæ
Hello, yamada
ãã®ããã«ã颿°ãåŒã³åºãã«ã¯ 颿°å(åŒæ°ãšããŠæž¡ãå€) ãšããèšæ³ã§æžããŸãã
äžèšã³ãŒãã§ã¯é¢æ°ãåŒã³åºããåŒã巊蟺ã®å€æ°result1ã«æ ŒçŽããŠããŸããããã®å€æ°ã«ã¯hello1颿°ãåŒã³åºããå®è¡çµæãèšå®ãããŠããŸããå®è¡çµæãšã¯ãåé
ã§èª¬æããreturnæã§è¿åŽããå€ã®ããšã§ãã
ãŸããåŒæ°ã®ååšããªã颿°ãåŒã³åºãå Žåã§ããããã®å Žåã¯åŒã³åºãéã«ãåŒæ°ãèšå®ããå¿
èŠã¯ãããŸããã
ãŸãšã
ãããã§ããã§ããããã
ä»åã玹ä»ããããã«ãJavaScriptã«ãããŠé¢æ°ã¯è€æ°ã®æ¹æ³ã§å®çŸ©ãå¯èœã§ããJavaScriptã«ãããŠé¢æ°ã¯ãã£ãšãåºæ¬çãã€éèŠãªèŠçŽ ã®ã²ãšã€ã§ãããé »ç¹ã«å©çšãããã®ãªã®ã§ããã£ãããšåºç€ãæããŠé¢æ°ãå©çšã§ããããã«ããŠãããŸãããã












