TS 学习(完结)

 

如果我们在 ts 中写 不用运行就能在文件中报错 ts 是一种静态类型的检查 能将运行时出现的错误前置

 

 

一般不用 命令行编译  

ts 转换成 js  将中文转码 tsc index(.ts) 

 输入命令生成 配置文件 能在中间进行 配置转换成 js 的哪个规范 es5 还是 6 和其它转换规范 

做项目 用 vue react 都是用脚手架 基于 webpack 和 vite 开箱即用 即时编译成 js 文件 不用上面两种编译形式 

给定义的变量加类型 只能给这个变量 赋值规定的那个类型

可以给函数的参数 和 返回值 定义类型 

个数也不能多 或 少 

也能给变量 规定成 字面量 类型的变量 但是 b 就只能是 hello了 把类型看成集合 

js 的类型 

 

 大写是 包装对象 小写是 原始字符串类型 一个是 字符 另一个是对象


包装对象也是有意义的 自动装箱时使用 不是给我们用的 

 

类型推断也失去作用

不写也是 any

会对其它类型 破坏 原本的string 被破坏

any 和 unknow  的区别

类型断言 (两种形式)

any 点 啥都不报错 unknow 点啥都报错 除非进行类型断言

函数啥都不写 也会返回东西

 所以 如果函数返回值类型 为 never  函数不能调用结束/终结(函数不能正常运行完结束) 或者一直进行调用

函数中抛出异常函数立即结束 而不会继续执行

 

 

不写返回值默认返回 undefined 返回值类型为 void 能接受 undefined 类型的返回值 其它都不行

 这几个都符合

不能用返回值 类型 为 void 这个返回值 进行任何操作 设置返回值为 void 不该拿返回值 或者用返回值做任何事情 

undefined 没事这就是 和 void 的区别

 就是 void 不能关心返回值 的确返回了 undefined 也不能用

 

原始类型 数字 字符串 布尔类型

这些都能定义

除了 null 和 undefined' 都能存储

分隔符 逗号分号都行 

如果这么写 必须数量和我们定义的一致 不能多不能少 

如果有可选属性 ? 就能 可写可不写该属性 

索引签名 写一个这个属性 就能想加几个属性就加几个属性 

key 换成 别的也行 

不是箭头函数 箭头只是区分这个类型是个函数 

定义数组中 数据的类型

泛型 用尖括号 大写 Array 别和前面弄混了 只是前面基本类型用小写

元组 可以让数组里面存不同的东西 特殊的数组类型  不是关键词 不能 let  a:tuple

问号是可选类型的元素 ..string[]  是可以写无限多个 字符类型的元素

不是对象的简写形式

其实就是个对象,反向映射 key 和 value 互换一下

这就是枚举的作用 都从枚举类型中 取东西 不会因为拼写错误排查半天 枚举是有穷的情况 不存在自己未知的情况

 字符串枚举没有反向映射

前面加一个 const 常量枚举 翻译成 js 时 不用将枚举本身再翻译一下了

type 为任意类型创建别名 也是关键词 只有 tuple 元组 不是关键词

创建了一个新的类型数字

使用管道符 定义复杂类型 联合类型

类型限制为 void 失效了 特殊情况

map 和 find 都要返回值 佛reach 不要返回值 时 undefined 符合 void

但是如果写简写后的箭头函数 就会默认将箭头后面的作为返回值 这样就不是 void 了  

 

 

如果定义一个类 就得用实现的英文

接口能继承

接口更好一点

指定的时候 才有具体的类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值