TypeScript 开发实战
梁宵
搜狗营销事业部高级架构师
34174 人已学习
新⼈⾸单¥59
课程目录
已完结/共 47 讲
TypeScript 开发实战
登录|注册
留言
23
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 05 | 基本类型
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | 重塑“类型思维”
02 | 类型基础(1):强类型与弱类型
03 | 类型基础(2):动态类型与静态类型
04 | 编写你的第一个TypeScript程序
05 | 基本类型
06 | 枚举类型
07 | 接口(1):对象类型接口
08 | 接口(2):函数类型接口
09 | 函数相关知识点梳理
10 | 类(1):继承和成员修饰符
11 | 类(2):抽象类与多态
12 | 类与接口的关系
13 | 泛型(1):泛型函数与泛型接口
14 | 泛型(2):泛型类与泛型约束
15 | 类型检查机制(1):类型推断
16 | 类型检查机制(2):类型兼容性
17 | 类型检查机制(3):类型保护
18 | 高级类型(1):交叉类型与联合类型
19 | 高级类型(2):索引类型
20 | 高级类型(3):映射类型
21 | 高级类型(4):条件类型
22 | ES6与CommonJS的模块系统
23 | 使用命名空间
24 | 理解声明合并
25 | 如何编写声明文件
26 | 配置tsconfig.json(1):文件选项
27 | 配置tsconfig.json(2):编译选项
28 | 配置tsconfig.json(3):工程引用
29 | 编译工具:从ts-loader到Babel
30 | 代码检查工具:从TSLint到ESLint
31 | 使用Jest进行单元测试
32 | 创建项目
33 | 组件与类型(1):函数组件与类组件
34 | 组件与类型(2):高阶组件与Hooks
35 | 事件处理与数据请求
36 | 列表渲染与路由
37 | Redux与类型
38 | 搭建服务端开发环境
39 | 列表的CRUD
40 | 导出Excel
41 | 搭建Vue开发环境
42 | 组件封装
43 | 组件发布
44 | 共存策略
45 | 宽松策略
46 | 严格策略
47 | 结课测试&结束语
本节摘要
登录 后留言

全部留言(23)

  • 最新
  • 精选
落叶🍂建良
对于元祖,如果push后的元素不能访问,是不是可以理解为元祖类型的数组的长度是不可以改变的?

作者回复: 原则上不可以改变,允许 push 应该是一个TypeScript 的一个缺陷

2019-07-18
3
11
Hurry
老师,let obj:object 与 let obj:Object 和 let obj:{} 的区别

作者回复: let obj: object // 表示非原始类型(非string/boolean/number/symbol/null/undefined) let obj: Object // TypeScript定义的标准JavaScript Object接口(按ctr可查看) let obj: {} // 表示一个空对象类型

2019-07-23
6
Feeng
老师:为什么 let obj: object = { x: 1, y: 2 }; obj['x'] = 2; 就不报错了?而obj.x = 2;就报错呢?

作者回复: 这种方式绕过了类型检查,算是一种hack,还是建议为object指定明确的属性和类型。

2019-07-18
2
4
文章
定义Symbol类型时报错, 类型“SymbolConstructor”没有兼容的调用签名。请问这是怎么回事?

作者回复: 应该是声明文件的问题,你的tsconfig.json中lib是如何配置的,最好贴出完整代码。

2019-08-04
3
1
老师,您在vscode中用的哪个ts的插件?

作者回复: Prettier,TSLint

2019-07-18
1
MarlboroKay
let s1: symbol = Symbol(); let s2 = Symbol(); console.log(s1 === s2) // false 为什么呢?

作者回复: 通过Symbol生成的值都是独一无二的,这是该类型设计的目的,防止属性名冲突

2020-11-08
2
有橙
老师 symbol 复制报错 只能把tsconfig.json 的配置修改为 es2015 那如果是 es2016怎么声明

作者回复: symbol是es6的类型,配置为es2015及以后的版本都不会报错

2019-12-14
东丰瑞雪建华年
```js type Fruit = "Orange" | "Apple" | "Banana"; let myString = "Banana"; let myFruit: Fruit = myString; ``` myFruit会报错,这种情况怎么处理会好些呢?(网上搜到的感觉不优雅,真实情景是antd table column align属性 "left" | "center" | "right" | undefined) 在线示例 https://www.tslang.cn/play/index.html#src=type%20Fruit%20%3D%20"Orange"%20%7C%20"Apple"%20%7C%20"Banana"%3B%0D%0A%0D%0Alet%20myString%20%3D%20"Banana"%3B%0D%0A%0D%0Alet%20myFruit%3A%20Fruit%20%3D%20myString%3B

作者回复: myFruit是一个字面量联合类型,只能被直接赋值为字面量,不能被赋值为一个字符串类型的变量,因为变量的值可能会发生改变。去掉中间变量myString即可。

2019-12-03
梦想飞驰FTD
要是对象的value也是个对象呢,要一直写下去吗 const obj:{a:{}} = {a:{}}

作者回复: 是的,但一般不这么写,可以定义一个接口,另外如果是对象字面量,直接赋值即可,不必指定类型。

2019-09-27
JustinLiu
老师你好,你的mac分屏软件用的什么

作者回复: Mac自带功能,按住关闭按钮

2019-08-31
收起评论