TypeScript 里的类只是一个语法糖,本质上还是 JavaScript 函数的实现
// User 类
class User {
fullName: string
firstName: string
lastName: string
constructor (firstName: string, lastName: string) {
this.firstName = firstName
this.lastName = lastName
this.fullName = firstName + ' ' + lastName
}
}
// 定义了一个 person 接口
interface Person {
firstName: string
lastName: string
}
// person 形参的类型注解是 Person 接口
function greeter (person: Person) {
return 'Hello, ' + person.firstName + ' ' + person.lastName
}
let user = new User('Yee', 'Huang')
// 给 greeter 传递的参数是一个 类 ,因为类中的数据和类型在 接口 Person 中存在,所以改参数成立
console.log(greeter(user))