Skip to content

Commit ea3c4be

Browse files
authored
๐Ÿ”€: Udemy/Ts/section5/61: this & binding (#37)
* ๐ŸŒฑ: 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๋ฒˆ ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ์‹ค์Šต์„ ํ–ˆ๋‹ค. * ๐Ÿšฉ: interface๋ฅผ ํ•™์Šตํ•˜๊ธฐ ์œ„ํ•ด ํด๋ž˜์Šค๋ฅผ ํ•™์Šตํ•˜๊ณ  ์‹ค์Šตํ•ด๋ณด์•˜๋‹ค. * ๐Ÿšฉ: dist์˜ ์ปดํŒŒ์ผ๋œ js๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด์„œ es5์—์„œ es6๋กœ ts.config ๋ณ€๊ฒฝ * ๐Ÿšฉ: es6์—์„œ es5๋กœ ์ปดํŒŒ์ผ target์„ ๋ณ€๊ฒฝ * ๐Ÿšฉ: this๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ถœ๋ ฅํ•œ class ๋‚ด ์ „์—ญ name ํ”„๋กœํผํ‹ฐ ์ •์ƒ ์ถœ๋ ฅ * ๐Ÿšฉ: thisํ‚ค์›Œ๋“œ๋ฅผ ๋‹ค์‹œ ํ•œ๋ฒˆ ๊ฐ์ฒด๋กœ ๊ฐ์‹ผ ๋ณต์ œ ํ•จ์ˆ˜ ํ• ๋‹น ํ›„ ์ถœ๋ ฅ undefined ๊ฒฐ๊ณผ ํ™•์ธ, this๋ฅผ ์‚ฌ์šฉ์‹œ ์ฃผ์˜ ์‚ฌํ•ญ * ๐Ÿšฉ: undefined ์žฌํ™•์ธ * ๐Ÿšฉ: ๋ณต์ œํ•œ class์˜ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•๊ณผ ์—๋Ÿฌ ์ž„์‹œ์ ์ธ ํ•ด๊ฒฐ ๋‹จ, ๋˜‘๊ฐ™์ด ๊ตฌํ˜„ ๋ถˆ๊ฐ€๋Šฅ
1 parent 1c4a152 commit ea3c4be

File tree

2 files changed

+22
-2
lines changed

2 files changed

+22
-2
lines changed

โ€Ždist/app.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,16 @@ var Department = /** @class */ (function () {
33
function Department(n) {
44
this.name = n;
55
}
6+
7+
Department.prototype.describe = function () {
8+
console.log("Department: " + this.name);
9+
};
610
return Department;
711
}());
812
var accounting = new Department('Accounting');
9-
console.log(accounting);
13+
accounting.describe();
14+
var accountingCopy = { name: 'newName', describe: accounting.describe };
15+
//์—ฌ๊ธฐ์„œ undefined๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ์ด์œ ๋Š” describe๊ฐ€ ์ฐธ์กฐํ•˜๋Š” ๊ฒƒ์ด ๋ฌด์—‡์ธ์ง€ ์•Œ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
16+
//๋”ฐ๋ผ์„œ accountingCopy์™€ ๊ฐ™์ด ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋กœ ์žฌ์ƒ์„ฑ์„ ํ•ด์„œ ํ• ๋‹นํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” class์˜ describeํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์—
17+
//this๋ฅผ ๋„ฃ๊ณ  ํƒ€์ž…์ง€์ •์„ Department๋กœ ์„ค์ •ํ•œ ๋’ค(์ฆ‰, ์ฒญ์‚ฌ์ง„์„ ์ฐธ์กฐํ•˜๊ฒŒ ์„ค์ •) accountingCopy์— name ํ”„๋กœํผํ‹ฐ๋ฅผ ๊ธฐ์ž…, ํ• ๋‹นํ•ด์ค˜์•ผ ํ•œ๋‹ค.
18+
accountingCopy.describe();

โ€Žsrc/app.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,18 @@ class Department {
33
constructor(n: string) {
44
this.name = n;
55
}
6+
7+
describe(this: Department) {
8+
console.log(`Department: ` + this.name)
9+
}
610
}
711

812
const accounting = new Department('Accounting');
9-
console.log(accounting);
13+
accounting.describe();
14+
15+
const accountingCopy = { name: 'newName', describe: accounting.describe };
16+
//์—ฌ๊ธฐ์„œ undefined๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ์ด์œ ๋Š” describe๊ฐ€ ์ฐธ์กฐํ•˜๋Š” ๊ฒƒ์ด ๋ฌด์—‡์ธ์ง€ ์•Œ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
17+
//๋”ฐ๋ผ์„œ accountingCopy์™€ ๊ฐ™์ด ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋กœ ์žฌ์ƒ์„ฑ์„ ํ•ด์„œ ํ• ๋‹นํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” class์˜ describeํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์—
18+
//this๋ฅผ ๋„ฃ๊ณ  ํƒ€์ž…์ง€์ •์„ Department๋กœ ์„ค์ •ํ•œ ๋’ค(์ฆ‰, ์ฒญ์‚ฌ์ง„์„ ์ฐธ์กฐํ•˜๊ฒŒ ์„ค์ •) accountingCopy์— name ํ”„๋กœํผํ‹ฐ๋ฅผ ๊ธฐ์ž…, ํ• ๋‹นํ•ด์ค˜์•ผ ํ•œ๋‹ค.
19+
20+
accountingCopy.describe();

0 commit comments

Comments
ย (0)