ã©ã¡ãã®å¤æ°ãå©ç¨å¯è½ã§ãããï¼
以ä¸ã®é¢æ° makeWorker ã¯å¥ã®é¢æ°ãä½ããããè¿ãã¾ãããã®æ°ãã颿°ã¯ã©ãããã§ãå¼ã¶ãã¨ãå¯è½ã§ãã
ããã¯ä½æãããå ´æããå¤é¨ã®å¤æ°ã¸ã¢ã¯ã»ã¹ããã§ããããï¼ããã¨ãå®è¡ãããå ´æããï¼ãããã¯ãã®ä¸¡æ¹ï¼
function makeWorker() {
let name = "Pete";
return function() {
alert(name);
};
}
let name = "John";
// 颿°ã使
let work = makeWorker();
// å¼ã³åºã
work(); // ä½ã表示ãããã§ããã?
âPeteâ or âJohnâ ã©ã¡ãã®å¤ã表示ãããã§ããã?
çãã¯: Pete ã§ãã
以ä¸ã®ã³ã¼ãã® work() 颿°ã¯ãå¤é¨ã®ã¬ãã·ã«ã«ç°å¢åç
§ãä»ãã¦ãå
ã®å ´æãã name ãåå¾ãã¾ãã:
ãããã£ã¦ãçµæã¯ "Pete" ã«ãªãã¾ãã
ããããmakeWorker() ã« let name ãç¡ãã£ãå ´åã¯ãæ¤ç´¢ã¯å¤é¨ã«åãããä¸ã®ãã§ã¼ã³ã®éãã°ãã¼ãã«å¤æ°ãåãã¾ãããã®å ´åãçµæã¯ "John" ã«ãªãã¾ãã