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

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.xdnf.cn/news/18002.html

相关文章:

  • Vue 3 + TypeScript:package.json 示例 / 详细注释说明
  • 基于Java飞算AI的Spring Boot聊天室系统全流程实战
  • 快速部署一个鉴黄服务
  • 前端vue框架
  • 【机器人-开发工具】ROS 2 (4)Jetson Nano 系统Ubuntu22.04安装ROS 2 Humble版本
  • 【Java 后端】Spring Boot 集成 JPA 全攻略
  • Nginx学习笔记(九)—— Nginx Rewrite深度解析
  • 版本更新!FairGuard-Mac加固工具已上线!
  • win11右键菜单改回win10样式
  • Data Augmentation数据增强
  • EtherCAT概念介绍
  • EchoEar喵伴接入小聆AI,MCP服务轻松体验,智能升级!
  • 低配硬件运行智谱GLM-4.5V视觉语言模型推理服务的方法
  • 如何基于langchain基类LLM自定义大模型
  • 飞算JavaAI开发全流程解析:从自然语言到可运行工程的智能进化
  • 从零开始学Python之数据结构(字符串以及数字)
  • 深入解析 Chrome UI 布局配置的设计思想与实现机制
  • STL算法【常用的算数生成算法】
  • vue3+leaflet案例:告警系统GIS一张图(附源码下载)
  • 基于大语言模型的爬虫数据清洗与结构化
  • 手机实时提取SIM卡打电话的信令声音-整体解决方案规划
  • 《WebGL中FBO的底层运行逻辑》
  • Day57--图论--53. 寻宝(卡码网)
  • 【前端工具】使用 Node.js 脚本实现项目打包后自动压缩
  • 计算机视觉(opencv)实战三——图像运算、cv2.add()、cv2.addWeighted()
  • Docker + Cronicle + Traefik 搭建服务器计划任务工具
  • nginx入门需知(含安装教程)
  • QT+Yolov8 推理部署,ONNX模型 ,实例分割+目标检测
  • 14、Docker Compose 安装 Redis 集群(三主三从)
  • linux 软硬链接详解