为了账号安全,请及时绑定邮箱和手机立即绑定

TypeScript极速入门

难度初级
时长 2小时39分
学习人数
综合评分10.00
3人评价 查看评价
10.0 内容实用
10.0 简洁易懂
10.0 逻辑清晰
哈哈哈,“怕什么真理无穷,进一寸有一寸的欢喜” 的白话版。
我怎么感觉 if else 更好呢,如果有多个条件判断,a && b && c,枚举写着是不是很麻烦
交叉类型(&):可以理解为合并属性,而属性的类型取交集,一般取小类型
联合类型(|):可以理解为或,或者是A的属性,或者是B的属性,或者是咱两合一起的属性,属性的类型一般取大类型
好像是看错了/(ㄒoㄒ)/~~
关于映射类型和索引类型的定义有些问题,具体可参考官方文档:
1、索引类型:https://www.typescriptlang.org/docs/handbook/2/indexed-access-types.html
2、映射类型:https://www.typescriptlang.org/docs/handbook/2/mapped-types.html
说明TypeScirpt是强类型时举的例子不恰当:对于动态类型编程语言,赋值时不声明类型,同一变量可以随时被赋值为不同类型,举的例子表现的仍然是TypeScript为静态类型;Python是动态类型,所以也能这么做,但它却是强类型,判断强弱类型的基准是会不会存在隐式类型转换:最典型的例子是JavaScript中string+number时,number会自动转换成string然后做字符串拼接;但是Python中不允许str+float;TypeScript中编译阶段允许string+number,实际类型转换是在JavaScript运行时,应当解释为运算符重载。
TypeScript 5.2

讲师回答 / 黑石
这是两种安全策略的问题,分为类型匹配和属性访问限制。类型匹配:在你的代码中,变量 c2 被定义为 Course2 类型,这是 EnglishCourse | MathCourse 的联合类型。变量 c2 的结构 { name: 'a', desc: 'abc' } 符合 EnglishCourse 接口的定义(因为 EnglishCourse 有 name 和 desc 两个属性),所以 TypeScript 认为这是一个有效的赋值。        接下来,关于为什么你不能直接访问 c2.desc:属性访...
交叉类型和联合类型的解释到位

已采纳回答 / 黑石
是一种后端语言。
课程须知
掌握前 npm 包的使用,了解 JavaScript 基础,如果有面向对象开发经验,学习效果更佳
老师告诉你能学到什么?
你能学到 Typescript 的基础概念、写法,类型的原理,以及在业务中真正实用的高级类型使用方法,更能通过泛型的学习,开启类型编程的大门。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消