Skip to content

Commit c464e9f

Browse files
authored
๐Ÿ”€: Udemy/Ts/section2/28 (#32)
* ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: README์„ ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: issue templates ์ƒ์„ฑ Github์—์„œ ์ž‘์„ฑํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: pr-template ์ƒ์„ฑ Github์—์„œ ์ž‘์„ฑํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: pr-template ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐ŸŒฑ: pr-template ์ˆ˜์ • Github์—์„œ ์ˆ˜์ •ํ•œ ์ปค๋ฐ‹์ž…๋‹ˆ๋‹ค. * ๐Ÿšฉ: udemy section2์˜ 14๋ฒˆ ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ์‹ค์Šต์„ ํ–ˆ๋‹ค. * ๐Ÿšฉ: ์ฝœ๋ฐฑํ•จ์ˆ˜๋กœ ๊ตฌํ˜„ํ•˜๊ธฐ ์˜ˆ์‹œ * ๐Ÿšฉ: undefined๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์›์ธ ์ฐพ๊ธฐ * ๐Ÿšฉ: undefined์˜ ๋ฐ˜ํ™˜ ์›์ธ ๋ถ„์„ ๊ฒฐ๊ณผ
1 parent 2edee70 commit c464e9f

File tree

1 file changed

+18
-6
lines changed

1 file changed

+18
-6
lines changed

โ€Žsrc/app.ts

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,24 @@ function printResult(num: number): void {
66
console.log('Result: ', +num);
77
}
88

9+
//์ฝœ๋ฐฑํ•จ์ˆ˜
10+
function addAndHandle(n1: number, n2: number, cd: (num: number) => void) {
11+
const result = n1 + n2;
12+
//cd(result);
13+
return cd(result); //return์œผ๋กœ ๋ฐ˜ํ™˜ ๊ฐ’ ์„ค์ •
14+
}
15+
16+
const test = addAndHandle(10, 20, (result) => {
17+
console.log(result);
18+
return result;
19+
});
20+
//์ฝœ๋ฐฑํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์–ด๋–ค ์žฅ์ ์ด ์žˆ๋Š”๊ฐ€?
21+
// ํ•จ์ˆ˜ ์•ˆ์—์„œ ์ฝœ๋ฐฑ์„ ์ „๋‹ฌํ•˜๋ฉด ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ๋Š” ๊ฒฐ๊ณผ๊ฐ€ ์ˆซ์ž๋ผ๋Š” ๊ฒƒ์„ ์ถ”๋ก ํ•œ๋‹ค. ์ฆ‰, ํ•ด๋‹น ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋ช…์‹œ์ ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค.
22+
console.log(test); //ํ•˜์ง€๋งŒ ์ด๋ ‡๊ฒŒ log๋ฅผ ์ฐ์–ด์„œ ํ™•์ธ์„ ํ•ด๋ณด๋ฉด ์•„๋ฌด๊ฒƒ๋„ ์—†๋Š” undefined๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์™œ๋ƒ๋ฉด ๋ฐ˜ํ™˜ ํƒ€์ž…์„ void๋กœ ์ง€์ •ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
23+
//๊ทธ๋ ‡๋‹ค๋ฉด ์—ฌ๊ธฐ์„œ ๋“œ๋Š” ์˜๋ฌธ์€ addAndHandle์˜ void๋•Œ๋ฌธ์ผ๊นŒ ์•„๋‹ˆ๋ฉด cd์˜ ์ฝœ๋ฐฑํ•จ์ˆ˜์—์„œ ์•”๋ฌต์ ์œผ๋กœ ์ง€์ •ํ•œ void๋•Œ๋ฌธ์ผ๊นŒ? ์ด์œ ๋Š” ๋ฆฌํ„ฐ๋Ÿด ํƒ€์ž…์„ ํ™•์ธํ•˜๋ฉด ๋œ๋‹ค. addAndHandle์˜ ๋ฐ˜ํ™˜๋˜๋Š” ๋ฆฌํ„ฐ๋Ÿด ํƒ€์ž…์€ number์ด๋‹ค. ํƒ€์ž…์„ ์ง€์ •ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์•”๋ฌต์ ์œผ๋กœ result์˜ ํƒ€์ž…์„ ๋Œ๊ณ ์™€์„œ number๋กœ ํƒ€์ž…์ด ์ง€์ •๋œ๋‹ค. ๋”ฐ๋ผ์„œ ํ•จ์ˆ˜ ํƒ€์ž…์„ ์ง€์ •ํ•˜๊ฑฐ๋‚˜ return๊ฐ’์„ ์ง€์ •ํ•ด์ฃผ๋ฉด undefined๊ฐ€ ์•„๋‹Œ ์ •์ƒ์ ์ธ ์ฝ”๋“œ๊ฐ€ ์ถœ๋ ฅ ๋  ๊ฒƒ์ด๋‹ค.
24+
925
printResult(add(1, 2));
1026

11-
// let result: Function; //์ผ๋ฐ˜์ ์ธ ๋ฐฉ์‹์œผ๋กœ ํ•จ์ˆ˜ ํƒ€์ž…์„ ํ• ๋‹นํ•œ ๊ฒฝ์šฐ
12-
let result: (a: number, b: number) => number; // ํ™”์‚ดํ‘œ๊ธฐ๋กœ ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜ ๊ฐ’๊นŒ์ง€ ํ• ๋‹นํ•œ ๊ฒฝ์šฐ
27+
let result: (a: number, b: number) => number;
1328
result = add;
14-
//result = printResult; // error ts(2322) -> 'void' ํ˜•์‹์€ 'number' ํ˜•์‹์— ํ• ๋‹นํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
15-
// ํ•ด๋‹น ์˜ค๋ฅ˜๋Š” result์˜ ํƒ€์ž…์€ number๋กœ ๋ฐ˜ํ™˜๋˜๋Š” ํ•จ์ˆ˜์—ฌ์•ผ๋งŒ ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ฆ‰, printResult๋Š” void๊ฐ€ ๋ฐ˜ํ™˜์ด๊ธฐ ๋•Œ๋ฌธ์— ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.
16-
// result = 0; //๊ฐ’์ด ์žฌํ• ๋‹น ๋˜๋ฉด์„œ 0์œผ๋กœ ๊ฐ’์ด ์ถœ๋ ฅ๋œ๋‹ค.
17-
console.log(result(1, 2)); // ๊ทธ๋ ‡๋‹ค๋ฉด result ๋ณ€์ˆ˜์— ํ•จ์ˆ˜ ํƒ€์ž…์„ ์ง€์ •ํ•˜๋ฉด ๋˜์ง€ ์•Š์„๊นŒ?
29+
console.log(result(1, 2));

0 commit comments

Comments
ย (0)