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

ts概念讲解

前言

在面向对象语言中,接口是一个很重要的概念,它是对行为的抽象,而具体如何行动需要由类去实现。TypeScript 中的接口是一个非常灵活的概念,除了可用于 对类的一部分行为进行抽象 以外,也常用于对「对象的形状(Shape)」进行描述。​TypeScript 的核心原则之一是对值所具有的结构进行类型检查,并且只要两个对象的结构一致,属性和方法的类型一致,则它们的类型就是一致的。​ 在TypeScript里,接口的作用就是为这些类型命名和为代码或第三方代码定义契约。简单点说,在 TypeScript中,接口是一个很重要的特性,它让 TypeScript 具备了 JavaScript 所缺少的、描述较为复杂数据结构的能力。## 引入主题> 其实在 JavaScript 日常开发中,很多时候都需要接口来 “规范” 程序。假设在 JavaScript 中定义一个函数,用来获取一个用户的姓名和年龄的字符串:javascriptfunction getUserInfo(user) { return `name: ${user.name}, age: ${user.age}`}函数调用:javascriptgetUserInfo({name: "koala", age: 18})您可能会问,我们写 JavaScript 的时候,这个再正常不过了吧?但请注意,如果这个 getUserInfo() 在多人开发过程中,如果它是个公共函数(多个开发者都会调用),如果不是每个人点进来看函数对应注释,可能会出现以下错误的调用:javascript// 1: 直接调用,不知道还需要传参数getUserInfo() // Uncaught TypeError: Cannot read property 'name' of undefined// 2: 只传递一个参数,不知道还有其他参数console.log(getUserInfo({name: "王佳斌"})) // name: 王佳斌, age: undefined// 3: 参数知道传递多少个,但不知键名getUserInfo({name: "王佳斌", width: 560}) // name: 王佳斌, age: undefined// ...由于 JavaScript 是弱类型的语言,所以 并不会对我们传入的代码进行任何的检测,😦 有些错你自己都说不清楚,但是就出了问题。****

http://www.lryc.cn/news/620580.html

相关文章:

  • 网络原理-HTTP
  • 一致性哈希Consistent Hashing
  • 【代码随想录day 20】 力扣 669. 修剪二叉搜索树
  • 力扣-64.最小路径和
  • 玩转Docker | 使用Docker部署JSON格式化工具ZJSON
  • iOS Sqlite3
  • 磁盘瓶颈现形记 - iostat让I/O压力无所遁形
  • 「iOS」————设计架构
  • iOS 26 一键登录失效:三大运营商 SDK 无法正常获取手机号
  • iOS性能监控新方法多版本对比与趋势分析实战指南
  • iOS混淆工具有哪些?游戏 App 防护下的混淆与加固全攻略
  • 网络通信---Axios
  • iOS App TestFlight 上架全流程案例,从 0 到 1 完成内测分发
  • Docker 部署:Web SSH、RDP、VNC 多协议全能远程管理工具
  • 零基础数据结构与算法——第七章:算法实践与工程应用-搜索引擎
  • 洗浴中心泡池水过滤系统原理深度解析与工程实践
  • 数智先锋 | 告别运维黑盒!豪鹏科技×Bonree ONE构建全栈智能可观测体系
  • 【网络】TCP/UDP总结复盘
  • Ollama如何分别使用2张H100GPU和4张A100部署GPT-OSS-120B全指南:硬件配置与负载均衡实战
  • PostgreSQL——触发器
  • Nginx学习笔记(八)—— Nginx缓存集成
  • GraphRAG查询(Query)流程实现原理分析
  • Unity人形角色IK优化指南
  • C++-setmap详解
  • 图灵测试:人工智能的“行为主义判据”与哲学争议
  • Elastic 获得 2025 年 Google Cloud DORA “以 AI 构建未来架构” 奖
  • 认知系统的架构: 认知残余三角形、认知主体意识 和认知演进金字塔(腾讯元宝)
  • Vue Vant应用-数据懒加载
  • Linux入门指南:基础开发工具---yum/apt
  • 分享一个基于Hadoop+spark的超市销售数据分析与可视化系统,超市顾客消费行为分析系统的设计与实现