📅  最后修改于: 2023-12-03 15:39:10.244000             🧑  作者: Mango
TypeScript 是一个静态类型语言,它的主要目的是在开发过程中提高开发者的代码质量和生产力。
在 TypeScript 中,一个 object
可以是一个普通的 JavaScript 对象或者是一个 class
的实例。在大多数情况下,我们可以将这两种形式的对象视为相同的类型。
// 一个普通的 JavaScript 对象
const person = {
name: 'Tom',
age: 25
};
// 一个 class 的实例
class Person {
name: string;
age: number;
constructor(name: string, age: number) {
this.name = name;
this.age = age;
}
}
const anotherPerson = new Person('Jerry', 30);
在这个例子中,person
和 anotherPerson
都可以表示一个人的信息,但是一个是普通对象,一个是 Person
类的实例。对于 TypeScript 来说,它们都是 object
类型。
当我们需要定义一个变量的类型为 object
时,我们可以使用 Object
类型。它是所有对象类型的基础类型。
// 使用 Object 类型
let obj: Object = {
name: 'Tom',
age: 25
};
// 一个具有 name 和 age 属性的类型
interface IPerson {
name: string;
age: number;
}
// 使用 IPerson 类型
let person: IPerson = {
name: 'Tom',
age: 25
};
// 使用 class 类型
let anotherPerson: Person = new Person('Jerry', 30);
当我们需要具有特定属性的对象类型时,我们可以使用 interface
关键字来定义一个对象类型。上面的例子中,我们定义了一个 IPerson
接口,它要求每个对象都有 name
和 age
属性。
我们还可以使用 class
定义一个对象类型。在我们的例子中,Person
类表示一个人的信息。anotherPerson
是 Person
类的一个实例。