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

typescript面试题

interface/type的关区别和使用

总结

  1. interface:可扩展,支持声明合并,适合定义对象和函数,支持extends
  2. type: 更灵活,类型别名,但不能重复定义,支持联合/交叉类型

interface:

  1. 只能定义对象结构
interface User {name: string;age: number;
}
  1. 声明合并
interface User {name: string;
}interface User {age: number;
}// 自动合并为:
// interface User { name: string; age: number; }const u: User = { name: 'Tom', age: 20 }; // ✅ 正确
  1. 继承与扩展
interface Person {name: string;
}interface User extends Person {age: number;
}

实现类

// implements type(只要 type 是对象结构)
class User implements UserInterface {// 必须实现 interface 定义的结构
}

type:

  1. 类型别名
type User = {name: string;age: number;
};// 更强大的能力:
type ID = string | number;
type Point = [number, number];
type Callback = (data: string) => void;
  1. 不支持重复定义
  2. 交叉类型
type Person = {name: string;
};type User = Person & {age: number;
};
http://www.hskmm.com/?act=detail&tid=1597

相关文章:

  • LIN通信协议入门
  • 答题赚现金程序介绍
  • 番茄社交营销商城系统介绍
  • framework中按压power键屏幕熄灭及亮起时流程
  • 标书智能体(二)——生成标书提纲代码+提示词
  • 易客云会员系统相关介绍
  • 线段树模版
  • 设计模式-责任链模式
  • Linux开机启动设置全攻略
  • 实用指南:Grafana - 监控磁盘使用率Variables使用
  • iphone可以用windows系统吗
  • iphone怎么变windows系统
  • P4694 [PA 2013] Raper
  • 共享内存使用举例
  • 【QML】解决 Qt C++ 正则表达式中文匹配问题
  • 产品包装盒这样制作,再也不用到处求人啦!超简单的上手方法分享!
  • FunctionAI 图像生成:简化从灵感到 API 调用的每一步
  • ​​电力系统的“慧眼”:深入解析电流互感器的核心用途​​
  • C# 内存泄漏
  • 2025.9记录
  • AQS
  • TVBox中的Python接口解读
  • 一、CPU的功能和基本结构
  • DevOps时代的知识管理革命:如何构建智能化的研发决策中枢
  • P1099 [NOIP 2007 提高组] 树网的核
  • [GenAI] 外接DeepSeek
  • 一个简单美观的文件时间修改器
  • 暗黑类游戏属性系统程序设计思路3.0
  • 完整教程:毕设课题:基于Node.js+Express框架+Mysql数据库的助农农产品销售商城设计与实现
  • 经典的混合加密传输协议—PGP