目录

现象:

Partial 作用:

Partial 实现原理:


现象:

Partial 在ts项目中很常见 使用频率也相对较高 如:

typescript 集合操作 typescript partial_typescript

Partial<T> 作用:

把接口类型中定义的属性变成可选:

interface People {
  age: number;
  name: string;
}

const jac:People = {
    age: 5,
    name: 'jac'
};

const lili: People = {
    name: 'lili'
}

运行该代码报错:

typescript 集合操作 typescript partial_实现原理_02

 现在我们用  Partial 来解决:

typescript 集合操作 typescript partial_实现原理_03

原因:

上图红框处 加 Partial 处理后,将 People 的树形变成了可选属性

// 处理前
interface People {
  age: number;
  name: string;
}

// 处理后相当于 将属性变成可选属性   固正常编译
interface People {
  age?: number;
  name?: string;
}

Partial 实现原理:

利用  keyof  遍历  后  使之属性变成可选

typescript 集合操作 typescript partial_实现原理_04

高级类型 · TypeScript中文网 · TypeScript——JavaScript的超集

typescript 集合操作 typescript partial_elementui_05

https://www.tslang.cn/docs/handbook/advanced-types.html