당신은 당신이 그것을 사용하고있는 방법입니다 유형으로 클래스를 사용할 수있을 것이다. 그래서 영웅이 인터페이스인지 클래스인지에 관계없이 유형으로 사용하고 있기 때문에 중요하지 않습니다.
class Hero { id: number; name: string }
또는
interface Hero { id: number; name: string }
다음은 영웅 클래스 또는 인터페이스가
let hero: Hero = { id: 1, name: 'me' }
interface
및
class
차별화가
interface
당신을 위해 단지이다
, 그것은하지 않습니다인지하지 우려를 않습니다 자바 스크립트로 transpile 얻을하지 마십시오. A class
않습니다 및 new
interface
수 없습니다.
생성자 또는 생성자가없는 경우 new
이면 instanceof
입니다. 당신이 키워드 new
와 영웅의 인스턴스를 생성했기 때문에 true
될 것이
let hero = new Hero();
귀하의 instanceof
로그로 다시 시도하십시오.
좋은 질문입니다. 대답은이 튜토리얼이 나쁜 습관을 조장한다는 것입니다. '영웅'은 '인터페이스'이어야합니다. –
Todd Motto는 차이점을 설명하는 [great article] (https://toddmotto.com/classes-vs-interfaces-in-typescript)을 가지고 있는데, 언제'interface' 대'class'를 사용해야할까요? – mhodges
참조를 추가 할 수 있습니까? 이 코드가있는 섹션? –