Skip to content

Commit 2edee70

Browse files
authored
๐Ÿ”€: Udemy/Ts/section2/27 (#31)
* ๐ŸŒฑ: 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 ์ถœ๋ ฅ๋˜๋Š” void ํ•จ์ˆ˜ ์˜ˆ์‹œ * ๐Ÿšฉ: ๋ฐ˜ํ™˜ ํƒ€์ž…์„ ๋ณ€์ˆ˜์— ์ง์ ‘ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ์‹ ์˜ˆ์‹œ
1 parent 6adf2b2 commit 2edee70

File tree

1 file changed

+13
-20
lines changed

1 file changed

+13
-20
lines changed

โ€Žsrc/app.ts

Lines changed: 13 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,17 @@
11
function add(n1: number, n2: number): number {
2-
return n1 + n2; //error ts(2322) 'number' ํ˜•์‹์€ 'string' ํ˜•์‹์— ํ• ๋‹นํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
3-
} //ํ˜„์žฌ return์— ์ •์˜ํ•œ n1+n2๋กœ ์ธํ•ด์„œ addํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜ ํƒ€์ž…์€ Number์ด๋‹ค. ๋งŒ์•ฝ toSting์œผ๋กœ ํ˜•๋ณ€ํ™˜์„ ํ•œ `n1.toString() + n2.toString()`์ผ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜๋œ ๊ฐ’์€ string์œผ๋กœ ํƒ€์ž…์ด ๋ฐ˜ํ™˜ ๋  ๊ฒƒ์ด๋‹ค.
4-
5-
function printResult(num: number | string | undefined): void {
6-
if (typeof num === 'number' || typeof num === 'string') {
7-
console.log('Result: ', +num);
8-
} else {
9-
console.log('this is Undefined!');
10-
}
11-
} //์ผ๋ฐ˜์ ์œผ๋กœ ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜ ํƒ€์ž…์„ ์ •ํ•˜์ง€ ์•Š์œผ๋ฉด void๋กœ ํŒ๋‹จํ•œ๋‹ค. `:void`๋ฅผ ๋ช…์‹œํ•˜์ง€ ์•Š์•„๋„ ํ•ด๋‹น ํ•จ์ˆ˜์— ๋งˆ์šฐ์Šค๋ฅผ ํ˜ธ๋ฒ„ํ•˜๋ฉด void๋กœ ํŒ๋ณ„ ๋˜์–ด ์žˆ๋Š” ๊ฒƒ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ตณ์ด void๋ฅผ ๋ช…์‹œํ•  ํ•„์š”๋Š” ์—†๋‹ค.
12-
13-
//๋ฐ˜ํ™˜๋˜์ง€ ์•Š๋Š” ํ•จ์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ log๋กœ ํ™•์ธ์„ ํ•ด๋ณด๋ฉด ์–ด๋–ค ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ๊นŒ
14-
console.log(printResult(add(5, 12))); //๊ฒฐ๊ณผ์ ์œผ๋กœ `undefined`๋ผ๋Š” ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜จ๋‹ค. ๋ฐ˜ํ™˜๋œ ๊ฐ’์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ •์˜๋˜์ง€ ์•Š์€ ๋ฐ•์Šค๋งŒ ์ถœ๋ ฅ์ด ๋˜๋Š” ๊ฒƒ์ด๋‹ค. ์ฐธ๊ณ ๋กœ `undefined`๋Š” ๊ฐ’์ด ์—†๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ๊ฐ’์„ ๋‹ด์•„๋‚ด๊ณ  ์žˆ๋Š” ๋ฐ•์Šค์— ์•„๋ฌด๊ฒƒ๋„ ๋‹ด๊ฒจ ์žˆ์ง€ ์•Š๋‹ค๋Š” ์˜๋ฏธ์˜ `๊ฐ’`์ด๋‹ค. ์ฆ‰, ๋น„์–ด ์žˆ๋Š” ๋ฐ•์Šค๋ฅผ ์ถœ๋ ฅํ•œ ๊ฒƒ์ด๋‹ค.
15-
16-
let UndefinedValue: undefined; //๋ณ€์ˆ˜๋กœ undefined๋ผ๋Š” ํƒ€์ž…์„ ์ง€์ •ํ•  ์ˆ˜๋Š” ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ํ•จ์ˆ˜์—์„œ๋Š” undefined๋ผ๋Š” ํƒ€์ž…์„ ํ• ๋‹น ํ•˜๋ฉด ์•ˆ๋œ๋‹ค. ๋ฐ˜ํ™˜๊ฐ’์ด ์—†๋Š” ํ•จ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋ฉด undefined๊ฐ€ ์ถœ๋ ฅ๋˜๋Š”๋ฐ ์ด๋Š” ํ•จ์ˆ˜์˜ ํ™œ์šฉ๊ณผ ์˜๋ฏธ๊ฐ€ ์ƒ์‹คํ•˜๊ฒŒ ๋œ๋‹ค.
2+
return n1 + n2;
3+
}
174

18-
function UndefinedFunction(value: string): undefined {
19-
console.log(value);
20-
// return value; //error ts(2322) -> 'string' ํ˜•์‹์€ 'undefined' ํ˜•์‹์— ํ• ๋‹นํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค
21-
return; //๊ฒฐ๊ณผ์ ์œผ๋กœ ํ•จ์ˆ˜์— ์•„๋ฌด๊ฒƒ๋„ ์—†๋Š” return์ด์—ฌ์•ผ undefined๊ฐ€ ๋œ๋‹ค.
5+
function printResult(num: number): void {
6+
console.log('Result: ', +num);
227
}
238

24-
printResult(UndefinedFunction('test'));
9+
printResult(add(1, 2));
10+
11+
// let result: Function; //์ผ๋ฐ˜์ ์ธ ๋ฐฉ์‹์œผ๋กœ ํ•จ์ˆ˜ ํƒ€์ž…์„ ํ• ๋‹นํ•œ ๊ฒฝ์šฐ
12+
let result: (a: number, b: number) => number; // ํ™”์‚ดํ‘œ๊ธฐ๋กœ ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜ ๊ฐ’๊นŒ์ง€ ํ• ๋‹นํ•œ ๊ฒฝ์šฐ
13+
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 ๋ณ€์ˆ˜์— ํ•จ์ˆ˜ ํƒ€์ž…์„ ์ง€์ •ํ•˜๋ฉด ๋˜์ง€ ์•Š์„๊นŒ?

0 commit comments

Comments
ย (0)