1、在public构造函数上使用on参数是一种速记,它使我们能够自动使用该名称创建属性。 class Student { fullName:string; constructor(public firstName: string, public middleInital: string, public lastName: string){ this.fullName = `${firstName} ${middleInital} ${lastName}`; } } constructor(public firstName: string, public middleInital: string, public lastName: string){ this.fullName = `${firstName} ${middleInital} ${lastName}`; } === constructor(firstName: string, middleInital: string, lastName: string){ this.firstName =firstName ; this.middleInital=middleInital; this.middleInital=middleInital; this.fullName = `${firstName} ${middleInital} ${lastName}`; } 2、接口interface //如果您确定对象可以具有某些以特殊方式使用的额外属性,则更好的方法可能是添加字符串索引签名。如果SquareConfig可以具有上述类型的color和width属性,但也可以具有任意数量的其他属性,那么我们可以这样定义它: interface SquareConfig { color?: string; //?可以存在 也可以不存在 不加?必须存在 width?: number; [propName: string]: any; //任意数量的其他属性 } //接口能够描述JavaScript对象可以采用的各种形状。除了使用属性描述对象外,接口还可以描述函数类型。 interface SearchFunc { (source: string, subString: string): boolean } let myFunc: SearchFunc; myFunc = function(src: string, sub: string){ let result = src.search(sub); return result > -1; } console.log(myFunc('123456','3'));