return
Baseline
åºãå©ç¨å¯è½
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2015å¹´7æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
return æã¯é¢æ°ã®å®è¡ãçµäºãã颿°ã®å¼ã³åºãå
ã«è¿ãå¤ãæå®ãã¾ãã
試ãã¦ã¿ã¾ããã
function getRectArea(width, height) {
if (width > 0 && height > 0) {
return width * height;
}
return 0;
}
console.log(getRectArea(3, 4));
// äºæ³ãããçµæ: 12
console.log(getRectArea(-3, 4));
// äºæ³ãããçµæ: 0
æ§æ
return;
return expression;
expressionçç¥å¯-
å¤ãè¿ãããå¼ãçç¥ããå ´åã¯ã代ããã«
undefinedãè¿ããã¾ãã
解説
return æã¯é¢æ°æ¬ä½å
ã§ã®ã¿ä½¿ç¨ã§ãã¾ãã颿°æ¬ä½å
ã§ return æã使ç¨ãããã¨ã颿°ã®å®è¡ã¯åæ¢ãã¾ããreturn æã¯é
ç½®ããã颿°ã«ãã£ã¦å¹æãç°ãªãã¾ãã
- åç´é¢æ°ã§ã¯ããã®é¢æ°ã¸ã®å¼ã³åºãã¯è¿å¤ã¨ãã¦è©ä¾¡ããã¾ãã
- éåæé¢æ°ã§ã¯ãçæããããããã¹ã¯è¿ãããå¤ã§è§£æ±ºããã¾ãã
- ã¸ã§ãã¬ã¼ã¿ã¼é¢æ°ã§ã¯ãçæãããã¸ã§ãã¬ã¼ã¿ã¼ãªãã¸ã§ã¯ãã®
next()ã¡ã½ããã¯{ done: true, value: returnedValue }ãè¿ãã¾ãã - éåæã¸ã§ãã¬ã¼ã¿ã¼é¢æ°ã§ã¯ãçæãããéåæã¸ã§ãã¬ã¼ã¿ã¼ãªãã¸ã§ã¯ãã®
next()ã¡ã½ããã¯ã{ done: true, value: returnedValue }ã§å±¥è¡ããããããã¹ãè¿ãã¾ãã
return æã try ãããã¯å
ã§å®è¡ãããå ´åãfinally ãããã¯ãããã°ãå®éã«å¤ãè¿ãããåã«å®è¡ããã¾ãã
èªåã»ãã³ãã³æ¿å ¥
æ§æä¸ãreturn ãã¼ã¯ã¼ãã¨è¿å¤ã®å¼ã®éã®æ¹è¡ã¯è¨±å®¹ããã¾ããã
return
a + b;
ä¸è¨ã®ã³ã¼ãã¯èªåã»ãã³ãã³æ¿å ¥ (ASI) ã«ãã£ã¦ã次ã®ããã«å¤æããã¾ãã
return;
a + b;
ããã«ããããã®é¢æ°ã¯ undefined ãè¿ãã a + b ã®å¼ã¯è©ä¾¡ããã¾ãããããã¯ã³ã³ã½ã¼ã«ã«è¦åã表示ãããã¨ãããã¾ãã
æ¬å¼§ã使ç¨ãããã¨ã§ããã®åé¡ãåé¿ããï¼ASI ãé²ãï¼ãã¨ãã§ãã¾ãã
return (
a + b
);
ä¾
>颿°ã䏿ãã
颿°ã¯ return ãå¼ã³åºãããæç¹ã§å³åº§ã«çµäºãã¾ãã
function counter() {
// ç¡éã«ã¼ã
for (let count = 1; ; count++) {
console.log(`${count}A`); // 5 ã¾ã§
if (count === 5) {
return;
}
console.log(`${count}B`); // 4 ã¾ã§
}
console.log(`${count}C`); // 決ãã¦ç¾ããªã
}
counter();
// ãã°:
// 1A
// 1B
// 2A
// 2B
// 3A
// 3B
// 4A
// 4B
// 5A
颿°ãè¿ã
ã¯ãã¼ã¸ã£ã«ã¤ãã¦ã®è¨äºãåç §ã®ãã¨ã
function magic() {
return function calc(x) {
return x * 42;
};
}
const answer = magic();
answer(1337); // 56154
仿§æ¸
| 仿§æ¸ |
|---|
| ECMAScript® 2027 Language Specification > # sec-return-statement > |