TypeScript 开发实战
系统掌握 TypeScript 核心技术
梁宵  搜狗营销事业部高级架构师
视频课
已完结·共 47 讲
|
3.4w 人已学
|
收藏
大雄不爱吃肉
很适合新手,入门到实践,希望老师继续出一门课程,不管啥课都行
作者回复:感谢支持!
2020-05-11
唐金州
强烈推荐大家学习,相较于 react vue 之类的框架,学习 ts 更为重要,也是趋势,进大厂必备技能之一
2019-07-17
王炳祺
老师被你华丽的言语所吸引了,一个语言被你介绍的如此生动形象,佩服佩服。我觉一个程序员会写代码真的不牛逼。会写代码并且还能口吐莲花的程序员,非常的Skr~。
2019-07-17
嘿喂狗
终于看完了所有的课程,比起之前自己啃文档。很多地方真的有融会贯通的感觉,很多地方值得反复观看。等以后遇到了还能再回来复习。谢谢老师。老师讲的很好,希望老师以后能出更多的课程,再来跟老师一起学习。
作者回复:很高兴你能有收获,我在和大家的讨论中也在一起进步。
2020-06-15
面白
鸭子那个比喻很形象
2020-03-29
+*
老师您好。对于交叉类型有一点疑问,如果两个类型定义了同一个方法,那么在交叉类型中要如何写呢? interface DogType { run(): void eat(x: number): number } interface CatType { jump(): void eat(y: string, z: string): string } let pet: DogType & CatType = { run() {}, jump() {}, // eat(x: number): number; // eat(y: string, z: string): string; // eat(y: string | number, z?: string): string // 以上三种好像都不对。eat 应该怎么写呢? }
作者回复:这个问题比较有趣。接口的属性分两种,如果是基本类型,比如: interface A { a: number } interface B { a: string } let foo: A & B = { a: } 你会发现对象 foo 的属性 a 的类型应该是 never,即 number & string 的类型。但 TS 规定没有任何值可以赋值给 never 类型,所以无论怎么赋值都会失败。 如果属性是函数,情况略有不同: interface A { f(a: number): number } interface B { f(a: string, b: string): string } let foo: A & B = { f(a: never) { return a } } 在交叉类型中,发生了函数重载,foo中的具体实现应该是一个宽泛的版本,同时兼容A和B中的定义:参数个数上,要选择最少的,参数类型和返回值类型参考前面的例子,取 number & string,即 never。这样不会报错。 实际上应该避免这种情况发生,仅做实验探讨吧。
2020-03-26
魔灵
课程真的很不错 实战,基础都是超级好 值得学习
2019-11-06
讲的很好,感谢老师!
2019-08-29
Hurry
本课程学到的最重要点应该是 建立类型思维
2019-08-28
许童童
课程很不错,老师江湖再见。
作者回复:江湖再见^_^
2019-08-28
讲师

梁宵

搜狗营销事业部高级架构师

梁宵,搜狗营销事业部高级架构师,负责广告和运营平台业务,主导 UI 框架及可视化工具的研发,同时拥有丰富的企业级中后台开发经验。 毕业于吉林大学计算机科学与技术专业,从事前端开发 10 余年,曾任职于百度,并译有《hapi.js 实战》、《JavaScript ES6 函...查看更多
编辑推荐
包含这门课的学习路径

前端工程师

24门课程 109.3w人学习
看过的人还看了
重学前端
程劭非(winter)
前手机淘宝前端负责人

57讲 | 105371 人已学习

¥59¥129
数据结构与算法之美
王争
前 Google 工程师

81讲 | 283797 人已学习

¥68¥199
左耳听风
陈皓
网名“左耳朵耗子”,资深技术专家

119讲 | 180996 人已学习

¥98¥399
Vue 开发实战
唐金州
一点资讯前端技术专家,Ant Design Vue 作者

53讲 | 60934 人已学习

¥59¥129
玩转 webpack
程柳锋
腾讯高级工程师,IVWEB 团队社区和工程化负责人

87讲 | 27458 人已学习

¥68¥199
MySQL 实战 45 讲
林晓斌
网名丁奇,前腾讯云数据库负责人

49讲 | 224933 人已学习

¥68¥199