Skip to content

Commit 48b764a

Browse files
committed
๐Ÿšฉ: undefined์˜ ๋ฐ˜ํ™˜ ์›์ธ ๋ถ„์„ ๊ฒฐ๊ณผ
1 parent 65042f6 commit 48b764a

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

โ€Žsrc/app.tsโ€Ž

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ function printResult(num: number): void {
99
//์ฝœ๋ฐฑํ•จ์ˆ˜
1010
function addAndHandle(n1: number, n2: number, cd: (num: number) => void) {
1111
const result = n1 + n2;
12-
cd(result);
12+
//cd(result);
13+
return cd(result); //return์œผ๋กœ ๋ฐ˜ํ™˜ ๊ฐ’ ์„ค์ •
1314
}
1415

1516
const test = addAndHandle(10, 20, (result) => {
@@ -19,7 +20,7 @@ const test = addAndHandle(10, 20, (result) => {
1920
//์ฝœ๋ฐฑํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์–ด๋–ค ์žฅ์ ์ด ์žˆ๋Š”๊ฐ€?
2021
// ํ•จ์ˆ˜ ์•ˆ์—์„œ ์ฝœ๋ฐฑ์„ ์ „๋‹ฌํ•˜๋ฉด ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ๋Š” ๊ฒฐ๊ณผ๊ฐ€ ์ˆซ์ž๋ผ๋Š” ๊ฒƒ์„ ์ถ”๋ก ํ•œ๋‹ค. ์ฆ‰, ํ•ด๋‹น ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋ช…์‹œ์ ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค.
2122
console.log(test); //ํ•˜์ง€๋งŒ ์ด๋ ‡๊ฒŒ log๋ฅผ ์ฐ์–ด์„œ ํ™•์ธ์„ ํ•ด๋ณด๋ฉด ์•„๋ฌด๊ฒƒ๋„ ์—†๋Š” undefined๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์™œ๋ƒ๋ฉด ๋ฐ˜ํ™˜ ํƒ€์ž…์„ void๋กœ ์ง€์ •ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
22-
//๊ทธ๋ ‡๋‹ค๋ฉด ์—ฌ๊ธฐ์„œ ๋“œ๋Š” ์˜๋ฌธ์€ addAndHandle์˜ void๋•Œ๋ฌธ์ผ๊นŒ ์•„๋‹ˆ๋ฉด cd์˜ ์ฝœ๋ฐฑํ•จ์ˆ˜์—์„œ ์•”๋ฌต์ ์œผ๋กœ ์ง€์ •ํ•œ void๋•Œ๋ฌธ์ผ๊นŒ?
23+
//๊ทธ๋ ‡๋‹ค๋ฉด ์—ฌ๊ธฐ์„œ ๋“œ๋Š” ์˜๋ฌธ์€ addAndHandle์˜ void๋•Œ๋ฌธ์ผ๊นŒ ์•„๋‹ˆ๋ฉด cd์˜ ์ฝœ๋ฐฑํ•จ์ˆ˜์—์„œ ์•”๋ฌต์ ์œผ๋กœ ์ง€์ •ํ•œ void๋•Œ๋ฌธ์ผ๊นŒ? ์ด์œ ๋Š” ๋ฆฌํ„ฐ๋Ÿด ํƒ€์ž…์„ ํ™•์ธํ•˜๋ฉด ๋œ๋‹ค. addAndHandle์˜ ๋ฐ˜ํ™˜๋˜๋Š” ๋ฆฌํ„ฐ๋Ÿด ํƒ€์ž…์€ number์ด๋‹ค. ํƒ€์ž…์„ ์ง€์ •ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์•”๋ฌต์ ์œผ๋กœ result์˜ ํƒ€์ž…์„ ๋Œ๊ณ ์™€์„œ number๋กœ ํƒ€์ž…์ด ์ง€์ •๋œ๋‹ค. ๋”ฐ๋ผ์„œ ํ•จ์ˆ˜ ํƒ€์ž…์„ ์ง€์ •ํ•˜๊ฑฐ๋‚˜ return๊ฐ’์„ ์ง€์ •ํ•ด์ฃผ๋ฉด undefined๊ฐ€ ์•„๋‹Œ ์ •์ƒ์ ์ธ ์ฝ”๋“œ๊ฐ€ ์ถœ๋ ฅ ๋  ๊ฒƒ์ด๋‹ค.
2324

2425
printResult(add(1, 2));
2526

0 commit comments

Comments
ย (0)