打字稿,使用类没有构造

虽然与“英雄之旅”教程中的角网站上的工作,我发现下面的语法(不久):打字稿,使用类没有构造

class Hero { 

id: number,

name: string,

}

const aHero: Hero = {

id: 1,

name: 'Superman'

}

console.log(aHero instanceof Hero); //false

什么会做这点?当我检查“aHero”的类型时,它只是一个普通对象而不是“英雄”类型。用构造函数初始化一个对象会更好吗?:

class Hero { 

constructor(id: number, name: string) {}

}

回答:

您可以使用class作为您使用它的方式。所以,无论Hero是接口还是类,它都不重要,因为您将它用作类型。

class Hero { id: number; name: string } 

interface Hero { id: number; name: string } 

下列不担心英雄是否是类或接口

let hero: Hero = { id: 1, name: 'me' } 

interfaceclass分辩interface是只为你,它不没有得到JavaScript转化。 A class确实如此,你不能newinterface

构造函数或没有构造函数,如果你new那么它就是instanceof。与此

let hero = new Hero(); 

instanceof日志再次尝试将true因为你确实创造了英雄的一个实例用关键字new

以上是 打字稿,使用类没有构造 的全部内容, 来源链接: utcz.com/qa/266681.html

回到顶部