类型记录的类型系统使用类型注释,如下所示:
private currentState: IAppState;我把它读成"currentState is a IAppState“
为什么这种语法比这更有设计意义,而这正是我习惯于使用的其他强类型语言?
private IAppState currentState;我知道TypeScript应该是JavaScript语法的扩展,但在这种情况下,是什么使TypeScript的设计人员选择了当前的语法而不是这样:
private IAppState: currentState;发布于 2019-01-26 01:27:04
我和一个朋友正在讨论这个问题,他举了一个很好的例子:
type student_detail = {
id: number,
name: string,
percentage: number,
clg_data: {
college_id: number,
college_name: string
}
}这看起来几乎像标准JS。现在,想象一下C样式的语法会是什么样子:
struct student_detail {
number id;
string name;
number percentage;
// structure within structure
struct {
number college_id;
string college_name;
} clg_data;
}当涉及到结构中的结构时,真正做到这一点的唯一方法是将它们分割成不同的结构:
struct student_college_detail {
number college_id;
string college_name;
};
struct student_detail {
number id;
string name;
number percentage;
struct student_college_detail clg_data;
}这很好,但并不适合于JavaScript。这很可能是他们坚持使用var: type语法的原因。如果你能做这两件事的话,那就太好了。:)
https://stackoverflow.com/questions/37140056
复制相似问题