当前位置: 首页 > news >正文

做图片的网站百度保障中心人工电话

做图片的网站,百度保障中心人工电话,wordpress本地添加图片不显示图片,做网站需要固定ip介绍 extends 关键字在 TypeScript 中有多种应用,包括泛型约束、继承类、接口继承和条件类型。通过灵活使用 extends,TypeScript 提供了丰富的工具来增强类型安全性,使代码更具表现力和可维护性。 1. 约束接口的继承 extends 关键字也可用于…

介绍

extends 关键字在 TypeScript 中有多种应用,包括泛型约束、继承类、接口继承和条件类型。通过灵活使用 extends,TypeScript 提供了丰富的工具来增强类型安全性,使代码更具表现力和可维护性。

1. 约束接口的继承
extends 关键字也可用于接口。通过接口继承,我们可以创建一个继承另一个接口的新接口,并添加额外的属性或方法。

interface Person {name: string;age: number;
}interface Employee extends Person {employeeId: number;
}const employee: Employee = {name: "John",age: 30,employeeId: 12345
};

2. 约束类的继承
在 TypeScript 中,extends 关键字也用于类的继承。子类可以继承父类的属性和方法,并在需要时进行重写。

class Animal {name: string;constructor(name: string) {this.name = name;}
}class Dog extends Animal {breed: string;constructor(name: string, breed: string) {super(name);this.breed = breed;}
}const myDog = new Dog("Fido", "Golden Retriever");
console.log(myDog.name); // 访问父类属性
console.log(myDog.breed); // 访问子类属性

3. 约束泛型类型参数
在 TypeScript 中,泛型(generics)使我们能够编写可重用的函数、类和组件,同时保持类型的安全性。extends 关键字在泛型中常常用于约束泛型类型参数,以确保传入的类型符合某些要求。

function lengthOfArray<T>(arr: T[]): number {return arr.length;
}const numbers = [1, 2, 3];
const result = lengthOfArray(numbers);

在上面的示例中,T 是泛型类型参数,它可以是任何类型。但有时我们希望泛型参数必须是某种类型的子类型。这时可以使用 extends 关键字来添加约束:

function firstElement<T extends Array<any>>(arr: T): T[0] {return arr[0];
}const numbers = [1, 2, 3];
const firstNum = firstElement(numbers); // firstNum 的类型是 number

<T extends Array> 表示 T 必须是 Array 或其子类型。这确保了传入的参数 arr 是一个数组,从而允许我们安全地访问其第一个元素。

4.条件类型
在 TypeScript 2.8+ 中,extends 关键字还被用于条件类型。条件类型使我们能够基于类型参数的属性来确定最终的类型。

type NonNullable<T> = T extends null | undefined ? never : T;const x: string | null = "hello";
const y: string = x; // 编译通过const a: string | null = null;
const b: string = a; // 报错

在上述示例中,NonNullable 是一个条件类型,它检查泛型类型 T 是否是 null 或 undefined,如果是,则返回 never 类型,否则返回 T 类型。这允许我们确保某个值不会为 null 或 undefined。

http://www.yayakq.cn/news/386084/

相关文章:

  • 做私活一个网站大概多少钱网站系统建设申请报告
  • 网站建设课程设计文献综述建设银行不良资产处置网站
  • 国外的购物网站有哪些php婚庆网站源码
  • 江门网站建设企业开发一款app需要多少人
  • 电子商务网站建设与管理课后题答案6做平面什么网站好用
  • 重庆招聘一般上什么网站有没有什么做高数的网站
  • 怎么做网站从0做到权重7seo建站需求
  • 上海网站建设招标找合作项目app平台
  • 杭州微信网站制作重庆手机网站推广
  • 网站规划包括哪些内容网站图片优化器
  • 网站头部设计优化全国工商网站查询企业信息
  • 网站欢迎页制作信誉好的盐城网站建设
  • 宣传网站制作关键词 网站
  • 网站建设柒金手指花总14什么网站有教做衣服视频的
  • 朝阳凌源网站建设网易163企业邮箱注册
  • 网站开发网站设计案例seo 优化教程
  • 网站内容要求做网站jsp和php
  • 新商盟网站开发时间多少钱 网站建设
  • 京东建站模板成都cms建站
  • 成都私人视频网站制作平台tv网站建设
  • 网站建设客户怎么寻找手机网页qq登录
  • 推广农村特色产品建设网站方案网站为何不显示百度商桥对话框
  • 泰安网站建设广告wordpress表格不显示
  • 免费制作个人网站的软件免费的软件下载大全安装
  • 网站设计论文提纲asp网站qq登录
  • 公司网站格式软文世界平台
  • 建立手机网站移动互联网服务管理中心官网
  • 做dw网站图片怎么下载地址电子商务能从事什么工作
  • 厦门市建设局报表网站wordpress加导航菜单
  • 东莞市做网站的公司服务五象新区开发建设指挥部网站