๐Ÿ‘ฉ‍๐Ÿ’ป๊ณต๋ถ€/JavaScript

[JavaScript] return๋ฌธ ์‚ฌ์šฉ ์ด์œ 

hhhhy 2024. 1. 17. 17:27

 return๋ฌธ ์‚ฌ์šฉ ์ด์œ  

  • ํ•จ์ˆ˜์—์„œ ๊ฒฐ๊ณผ๊ฐ’์„ ์™ธ๋ถ€๋กœ ๋ฐ˜ํ™˜(output)ํ•  ๋•Œ ์‚ฌ์šฉ!
  • return๋ฌธ์„ ๋งŒ๋‚˜๋ฉด ํ•จ์ˆ˜๊ฐ€ ๋๋‚˜๊ธฐ ๋•Œ๋ฌธ์— return ๋’ค์— ์˜ค๋Š” ์ฝ”๋“œ๋Š” ์‹คํ–‰๋˜์ง€ ์•Š์Œ.
  • return๋ฌธ์„ ์‚ฌ์šฉํ•˜๋ฉด ํ•จ์ˆ˜์˜ ๊ฒฐ๊ณผ๋ฅผ ์™ธ๋ถ€๋กœ ์ „๋‹ฌํ•˜๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Œ.

 

1. ๊ฒฐ๊ณผ๊ฐ’ ๋ฐ˜ํ™˜

return๋ฌธ ๋’ค์— ๋ฐ˜ํ™˜๊ฐ’์„ ์ž‘์„ฑํ•˜๊ณ , ๊ทธ ๊ฐ’์„ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•œ ๊ณณ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ.

function add(a, b) {
    return a + b;
}

let result = add(3, 5);
console.log(result);  // 8

 

2. ํ•จ์ˆ˜ ์ข…๋ฃŒ

return๋ฌธ์„ ๋งŒ๋‚˜๋ฉด ํ•ด๋‹น ํ•จ์ˆ˜์˜ ์‹คํ–‰์ด ์ข…๋ฃŒ๋จ.

function divide(a, b) {
    if (b === 0) {
        console.log("b๋Š” 0์ด ๋  ์ˆ˜ ์—†์Šด๋‹น.");
        return;  // ํ•จ์ˆ˜ ์ข…๋ฃŒ
    }
    return a / b;
}

let result = divide(8, 2);  // 4
let failResult = divide(6, 0);  // ์—๋Ÿฌ ๋ฉ”์‹œ์ง€๋งŒ ๋‚˜์˜จ ํ›„ return ๋งŒ๋‚˜์„œ ํ•จ์ˆ˜ ์ข…๋ฃŒ

 

3. ์ฝ”๋“œ ์žฌ์‚ฌ์šฉ์„ฑ ์ฆ๊ฐ€

ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜๊ฐ’์„ ํ™œ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ๊ณณ์—์„œ ๋™์ผํ•œ ๊ฒฐ๊ณผ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด, ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ด๊ณ  ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์‰ฝ๊ฒŒ ๋งŒ๋“ฆ.

function square(x) {
    return x * x;
}

let area = square(5);  // 25 : ์ •์‚ฌ๊ฐํ˜•์˜ ๋„“์ด ๊ณ„์‚ฐ
let volume = square(5) * 10;  // 250 : ์ •์‚ฌ๊ฐํ˜•์„ ์ด์šฉํ•œ ๋ถ€ํ”ผ ๊ณ„์‚ฐ

 

 return์˜ ๋ฐ˜ํ™˜๊ฐ’์ด ์—†๊ฑฐ๋‚˜  return์ด ์—†๋‹ค๋ฉด? 

  • undefined ๋ฐ˜ํ™˜!
// 1,2๋ฒˆ ๋ชจ๋‘ alert ์ฐฝ('์—๋Ÿฌ ๋ฐœ์ƒ!!!')์ด ๋œฌ ํ›„, ์ฝ˜์†”์—๋Š” undefined์ด ์ถœ๋ ฅ๋จ.


// 1) return์˜ ๋ฐ˜ํ™˜๊ฐ’์ด ์—†๋Š” ๊ฒฝ์šฐ

function showError(a) {
  alert('์—๋Ÿฌ ๋ฐœ์ƒ!!!');
  return;
}
const result = showError(1);
console.log(result);  // undefined


// 2) return ์—†๋Š” ๊ฒฝ์šฐ

function showError(a) {
  alert('์—๋Ÿฌ ๋ฐœ์ƒ!!!');
}
const result = showError(1);
console.log(result);  // undefined

 

 ์ฐธ๊ณ