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'));