TypeScript 学习 -类型 - 9

声明合并

  • 成员变量合并:成员变量会合并,但类型必须一致。
  • 成员函数合并:如果函数签名不同,合并后的函数会是签名的联合类型。
  • 接口声明顺序:在同一个接口内按顺序合并;不同接口时,后声明的会覆盖前声明的。
  • 函数字面量优先级:如果有函数字面量,它们会优先合并。
ts 复制代码
interface Person {
  name: string;
}

interface Person {
  age: number;
}

interface Person {
  age: string; // 错误: 重复的属性 'age', 类型不兼容
}
ts 复制代码
interface Person {
  greet(name: string): void;
}
interface Person {
  greet(age: number): number; // 错误:类型签名不一致
}
const person: Person = {
  // greet(nameOrAge: string | number) {}, // 错误:类型签名不一致
  greet(nameOrAge: string | number): number {
    return 0;
  },
};
ts 复制代码
interface Person {
  name: string;
}
interface Person {
  age: number;
}
const person: Person = {
  name: 'Alice',
  age: 25,
};
相关推荐
吃饭睡觉打豆豆嘛2 分钟前
彻底搞懂前端路由:从 Hash 到 History 的演进与实践
前端·javascript
lbh1 小时前
简单文本编辑器:基于原生JavaScript的智能文本选择工具栏
前端·javascript
ATaylorSu1 小时前
经典算法之美:冒泡排序的优雅实现
开发语言·笔记·学习·算法
典学长编程1 小时前
前端开发(HTML,CSS,VUE,JS)从入门到精通!第三天(JavaScript)
前端·javascript·css·html·前端开发
遇见尚硅谷2 小时前
# C语言:20250730学习(二级指针)
c语言·学习·算法
amazinging2 小时前
北京-4年功能测试2年空窗-报培训班学测开-今天来聊聊我的痛苦
python·功能测试·学习·面试
DKPT3 小时前
Java设计模式之行为型模式(解释器模式)实现方式详解
java·笔记·学习·设计模式·解释器模式
Jimmy3 小时前
TypeScript 泛型:2025 年终极指南
前端·javascript·typescript
Spider_Man3 小时前
栈中藏玄机:从温度到雨水,单调栈的逆袭之路
javascript·算法·leetcode
jstart千语4 小时前
【vue】创建响应式数据ref和reactive的区别
前端·javascript·vue.js