inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

타입스크립트 입문 - 기초부터 실전까지

프로토타입과 클래스와의 관계

객체의 prototype 속성에 대한 질문입니다.

해결된 질문

203

호눅스

작성한 질문수 28

1

검색을 살짝 해 봤는데 헷갈리는 부분이 있어서 질문 남깁니다.

생성자 함수에는 prototype이라는 속성이 있고, 생성자로 만든 객체에는 __proto__ 가 있는데 둘이 같네요?

Person.prototype === seho.__proto__

까지 썼는데 질문을 잊어버렸습니다 ㅋㅋㅋㅋ. 

무언가 많이 복잡하고 혼란스럽네요. 이해할 듯 말듯한 이 느낌.

원래 질문은 생각이 안 나지만 추가적으로...

Person.prototype.numEye = 2; 

이런식으로 static 변수처럼 사용해도 되는 걸까요?

javascript typescript es6

답변 2

2

캡틴판교

안녕하세요 교수님 제가 답이 늦었네요 :) 먼저 프로토타입 질문은 크롬에서 prototype이 __proto__로 표시됩니다 :) 코드 상으로 저희가 작성한 prototype의 실질적인 결과물은 __proto__로 표시된다고 보시면 될 것 같아요 :) 그리고 static 용도의 변수는 const로 선언해서 import 하여 사용하는게 일반적인데 프로토타입의 속성으로 쓰셔도 크게 상관없지 않을까.. 생각합니다 ㅋㅋ

클래스 코드는 직접 컴파일한 결과를 확인해 보셨군요. 첨부해 주셔서 저도 잘 봤습니다 :) 담주 초에 타입스크립트 후속 영상 개시할 예정인데 고거 나오면 한번 말씀 드릴게용 :)

2

호눅스

자답이지만,  아래쪽 TS 클래스 강의 듣고 제가 작성한 코드르 JS로 변환해 보니 조금 더 깨달음이 왔어요. 감사합니다! 

class Dog {
    public name: string;
    private age: number;
    public static numTail: number;

    constructor(nameage) {
        this.name = name;
        this.age = age;
        Dog.numTail = 1;
    }

    hi() {
      console.log(`Hello ${this.name}${this.age} ${Dog.numTail}`);  
    }
}
function foo(d: Dog) : void {
    d.hi();
}

const d1 = new Dog('Nabi', 3);
const d2 = new Dog('Zelda', 10);

foo(d1);
foo(d2);

var Dog = (function () {
    function Dog(name, age) {
        this.name = name;
        this.age = age;
        Dog.numTail = 1;
    }
    Dog.prototype.hi = function () {
        console.log("Hello " + this.name + "" + this.age + " " + Dog.numTail);
    };
    return Dog;
})();
function foo(d) {
    d.hi();
}
var d1 = new Dog('Nabi', 3);
var d2 = new Dog('Zelda', 10);
foo(d1);
foo(d2);

TSLint

0

66

1

vscode eslint server 오류

0

75

1

안녕하세요. 기본타입- 튜플, 객체, 진위값 부분의 영상의 화면이 나오질 않습니다.

0

77

1

live server 설치 오류

1

368

2

강의 교안 pdf 는 따로 제공하지않나요?

0

284

2

npm i 설치 이유 문의

1

403

3

index.ts Delete `␍`eslintprettier/prettier 오류(빨간줄) 해결

2

289

3

vue 에서 jquery 사용 문제

1

692

2

TSLint 확장 프로그램은 현재 지원하지 않는다고 합니다.

1

499

2

강의 내용처럼 노란 밑줄이 작동하지 않아서 유사 질문들을 실행해보았는데요

1

542

1

section 3-1 JSdoc 타입이 추론되지 않아서 다음과 같이 수정했는데 이거 맞나요?

1

452

2

함수에 리턴 안됐다고 노란밑줄이 쳐져야하는데 없습니다

2

455

1

파일이 다른데 식별자가 중복되었다고 뜹니다.

1

443

2

빨간줄 에러 질문드립니다

1

489

2

마우스 갖다대면 리턴값 설명 나오는 거 질문드려요

1

356

2

js에서 @ts-check 적어도 체크하지 못하는 문제입니다

2

393

2

index.html에서 타입스크립트 콘솔 찍는 법 질문드립니다

1

565

2

섹션 1-3 추론 질문드립니다

1

354

2

왜 api쪽에는 왜 에러가 안나는지 궁금합니다.

1

323

2

const item1을 선언했을 때 타입을 선언해줘도 괜찮을까요?

1

390

1

전화번호부 타입선언

1

265

2

타입을 전역으로 분리

1

592

2

객체 선언 시 구분자는 쉼표, 세미콜론 모두 사용가능한건가요?

1

459

1

Git 관련 질문이 있습니다

1

669

2