TS的接口中<Square>{}表示什么?

TS代码如下:

interface Shape {
    color: string;
}

interface Square extends Shape {
    sideLength: number;
}

let square = <Square>{};
square.color = "blue";
square.sideLength = 10;

在代码中<Square>{}表示什么含义

阅读 5.4k
2 个回答

尖括号内是泛型(参数类型化),在文中是断言类型(ts的另外一种断言是as 关键字),你可以理解为是强制类型转换。{}表示初始化,类似于js中的构造函数区域。如果你有java或golang,C... 哪怕一点点静态语言基础,就很清楚了。换而言之,就是使用零值初始化一个Square接口类型变量,用js的话来说,就是要你给出一个对象,该对象有字符串类型color属性,数字类型sideLength,像下面这样

let square  = {color:'白色',sideLength:255}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进