2小时极速入门 TypeScript-慕课网 笔记

TS文档:https://www.tslang.cn/docs/handbook/modules.html

一,什么是TS

在这里插入图片描述
注:Typescript无法在浏览器中运行 ,所以需要编译器,将TS转变为JS

:TS运行这么麻烦,为什么还要有TS?
:TS强类型
1,规范我们的代码;
2,代码编译阶段就能及时发现错误;
3,在原生js的基础上加上了一层类型定义;

二,基础类型

类型案例
布尔值 boolean(true/false)let isDone: boolean = false;
数字numberlet decLiteral: number = 6;
字符串 stringlet name: string = “bob”;
数组1,元素类型后面接[] 例如:let list: number[] = [1, 2, 3];
2,数组泛型 Array<元素类型> 例如:let list: Array = [1, 2, 3];
元组Tuple,允许表示一个已知数量和类型的数组,各元素的类型不必相同let x: [string, number];
x = [‘hello’, 10]; // OK
x = [10, ‘hello’]; // Error
枚举, 真正的类型是number,从0开始计算enum Color {Red, Green, Blue}
let c: Color = Color.Green; // 1
enum Color2{Red=5, Green=7, Blue=8}
let c: Color = Color2.Green; // 7
enum Color3 {Red=“red”, Green=“green”, Blue=1}
let c: Color = Color3.Green; // “green”
Any,动态类型let notSure: any = 4;
notSure = “maybe a string instead”;
notSure = false;
unkonw,类型是暂时未知类型,之后会知道它的类型,仍然会进行ts的类型检查let value: unknown;
Void,它表示没有任何类型。 当一个函数没有返回值时,其返回类型是voidfunction warnUser(): void {
console.log(“This is my warning message”);
}
Null和Undefined,两者各自有自己的类型分别叫做undefined和nulllet u: undefined = undefined;
let n: null = null;
Never,表示那些永不存在的值的类型
Object,表示非原始类型,也就是除number,string,boolean,symbol,null或undefined之外的类型。declare function create(o: object | null): void;
create({ prop: 0 }); // OK
create(null); // OK
create(42); // Error
create(“string”); // Error
create(false); // Error
create(undefined); // Error
类型断言,类型断言好比其它语言里的类型转换1,尖括号 语法 例如:let someValue: any = “this is a string”;
let strLength: number = (<string>someValue).length;
2,as 语法 let someValue: any = “this is a string”;
let strLength: number = (someValue as string).length;
联合类型, 中间使用 |let union2 : number | string | boolean
字面量类型,确定了变量类型以及变量的值let union2 : 0 | 1 | 2;// 确定了 union2 是number类型,并且取值范围是 [0-2]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/737266.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

图解构建知识体系的过程

点击标题下「蓝色微信名」可快速关注 无论是日常的学习还是工作过程中&#xff0c;每个人其实都可以找到适合自己的学习方式和知识体系&#xff0c;如果方向正确&#xff0c;就可以事半功倍&#xff0c;之前借鉴某些数据库技术的知识体系聊过相关的主题&#xff08;可以参考《搭…

车载以太网权威指南阅读笔记

总体思路&#xff1a; 要基于车载以太网做出相应的机器人以太网神经中枢&#xff0c;需要按照以下步骤&#xff1a; 了解车载以太网&#xff0c;包括但不限于 车载以太网是如何基于汽车需求定义的车载以太网的工作模式车载以太网工作所需要的硬件车载以太网中的数据交互模式 …

Docker如何安装redis

目录 1. 拉取redis的镜像文件 2. 创建redis的容器卷 3. 准备reids的配置文件 4. 以配置文件启动redis 1. 拉取redis的镜像文件 # 默认安装最新版本 如果需要指定版本 docker pull redis:版本号 docker pull redis 详细版本请看dockerhub的官网&#xff1a; hub.docker…

仓颉编程语言入门

华为在 2024 年 6 月 21 日的华为开发者大会上&#xff0c;华为终端 BG 软件部总裁龚体正式官宣了华为自研仓颉编程语言&#xff0c;并发布了 HarmonyOS NEXT 仓颉语言开发者预览版。 仓颉编程语言文件后缀名为 .cj, 以下是第一个入门代码输出&#xff1a;你好&#xff0c;仓颉…

公司倒闭被迫踏上海投简历道路,经历打压受挫后总结的Android面经,互相激励!

红黑树有啥特性? 在oncreate里面可以得到view的宽高吗? view的getwidth和getmesurewidth有啥区别? 遍历hashmap的原理? 23种设计模式 中园博林(有笔试) 如何避免out of menmory和anr? arraymap和hashmap的区别? 如何实现线程同步? 简述android事件分发机制 简…

怎么投资中证全指证券公司指数?

中证全指证券公司指数的代码是399975&#xff0c;有50只成分股&#xff0c;几乎包含了市场上所有主要的证券公司&#xff0c;算是指数基金中投资证券行业的不二选择。 根据天天基金的数据显示&#xff0c;市面上有31只跟踪该指数的基金&#xff0c;规模最大的是南方中证全指证…

EtherCAT笔记(三) —— 主站与从站的硬件组成

1. EtherCAT 主站的硬件组成 EtherCAT主站使用标准以太网控制器&#xff0c;也即EtherCAT主站可以使用以太网控制器的任何设备。当我们有一台带网口的笔记本、工控机&#xff0c;甚至是树莓派也可以作为EtherCAT主站。 EtherCAT协议是对Ethernet协议在实时控制等方面的优化&am…

爬虫笔记14——爬取网页数据写入MongoDB数据库,以爱奇艺为例

下载MongoDB数据库 首先&#xff0c;需要下载MongoDB数据库&#xff0c;下载的话比较简单&#xff0c;直接去官网找到想要的版本下载即可&#xff0c;具体安装过程可以看这里。 pycharm下载pymongo库 pip install pymongo然后在在python程序中我们可以这样连接MongoDB数据库…

git stash Pop 后丢失,要如何找回?

文章目录 须知背景描述解决过程 须知 写在前面&#xff1a;我们都知道 stash list 中如果 pop 出来一条&#xff0c;那 list 里就会少一条&#xff0c;但其实使用 git stash pop 并没有真正地将该条 stash 删掉的&#xff0c;而是删除引用而已&#xff0c;因此当我们误 pop 时…

STM32学习 修改系统主频

前面时钟树的学习说明单片机的主频是可以修改的&#xff0c;那么怎么更改系统的主频&#xff0c;这里做一个简单的介绍。首先要明白&#xff0c;单片机的程序是如何运行&#xff0c;这里简单说明一下。 对应的代码在startup_stm32....文件里面&#xff0c;这里是复位程序的汇编…

vue3封装菜树,递归展示只显示第一层

问题描述 vue3封装菜树&#xff0c;递归展示只显示第一层 解决 需要在递归的组件中导出自己给自己使用

【网络安全的神秘世界】SQL注入漏洞

&#x1f31d;博客主页&#xff1a;泥菩萨 &#x1f496;专栏&#xff1a;Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 本章知识使用的靶场&#xff1a;DVWA 一、漏洞简介 SQL&#xff1a;结构化查询语言&#xff0c;是一种特殊的编程语言&#…

【设计模式深度剖析】【11】【行为型】【解释器模式】| 以算术表达式求值为例加深理解

&#x1f448;️上一篇:状态模式 设计模式-专栏&#x1f448;️ 文章目录 解释器模式定义英文原话直译 解释器模式中的角色1. 抽象表达式&#xff08;AbstractExpression&#xff09;2. 终端表达式&#xff08;TerminalExpression&#xff09;3. 非终端表达式&#xff08;Non…

电容的命名规则

给如下参数给采购&#xff0c;就可以获取 还有一些参数需要重视 容值随着环境温度而保持的程度 常规应用时是可以不用看材质&#xff0c;但是如果使用在新能源汽车和极端环境下的电子产品&#xff0c;就需要关注材质&#xff0c;曾有供应商把可用级电容供应车企&#xff0c;导致…

微信小程序学习(六):常用原生 API

&#x1f517;API官方文档 1、网络请求 wx.request({// 接口地址&#xff0c;仅为示例&#xff0c;并非真实的接口地址url: example.php,// 请求的参数data: { x: },// 请求方式 GET|POST|PUT|DELETEmethod: GET,success (res) {console.log(res.data)},fail(err) {console.…

vue3源码(五)ref、toRef、toRefs、proxyRefs

1.ref 功能 ref与reactive功能类似,都是将数据变为响应式&#xff0c;ref通常用来定义基本类型数据&#xff0c;如字符串、数字、布尔值等。而reactive用来定义对象&#xff08;或数组&#xff09;类型数据。虽然ref也可以用来定义对象或数组类型的数据&#xff0c;但内部会通…

淦!在外包开发的三年给整废了,备战两个月终拿到Android阿里字节哈啰offer总结,阿里P6+这回稳了!

面试时候就感觉不靠谱&#xff0c;因为面试地点是位于近江附近的望江国际里面的温州银行&#xff0c;面试前网上搜了广电运通的信息&#xff0c;说是国企&#xff0c;所以我就硬着头皮接下 offer 了&#xff0c;没想到面试 Android 结果做的 C&#xff0c;而且也是驻场开发。 …

安装react之nvm版本低引起的问题

1.背景 准备搭建一个react&#xff0c;然后看官网文档 创建项目&#xff0c;使用命令行 npx create-next-applatest 创建项目的流程都是正常的。当我准备运行项目的时候&#xff0c;报错了 原先的报错没有了&#xff0c;从网上找了一个类似的 重要的内容是&#xff1a;当前…

[面试题]Jenkins

[面试题]Java【基础】[面试题]Java【虚拟机】[面试题]Java【并发】[面试题]Java【集合】[面试题]MySQL[面试题]Maven[面试题]Spring Boot[面试题]Spring Cloud[面试题]Spring MVC[面试题]Spring[面试题]MyBatis[面试题]Nginx[面试题]缓存[面试题]Redis[面试题]消息队列[面试题]…

发表在SIGMOD 2024上的高维向量检索/向量数据库/ANNS相关论文

前言 SIGMOD 2024会议最近刚在智利圣地亚哥结束&#xff0c;有关高维向量检索/向量数据库/ANNS的论文主要有5篇&#xff0c;涉及混合查询&#xff08;带属性或范围过滤的向量检索&#xff09;优化、severless向量数据库优化、量化编码优化、磁盘图索引优化。此外&#xff0c;也…