没有合适的资源?快使用搜索试试~ 我知道了~
26_TypeScript语法精讲(一)1
需积分: 0 0 下载量 193 浏览量
2022-08-03
22:18:56
上传
评论
收藏 1.16MB PDF 举报
温馨提示
试读
32页
26_TypeScript语法精讲(一)1
资源详情
资源评论
资源推荐
TypeScript语法精讲(一)
王红元 coderwhy
coderwhy
n 我始终相信:任何新技术的出现都是为了解决原有技术的某个痛点。
n JavaScript是一门优秀的编程语言吗?
p 每个人可能观点并不完全一致,但是从很多角度来看,JavaScript是一门非常优秀的编程语言;
p 而且,可以说在很长一段时间内这个语言不会被代替,并且会在更多的领域被大家广泛使用;
n 著名的Atwood定律:
p Stack Overflow的创立者之一的 Jeff Atwood 在2007年提出了著名的 Atwood定律。
p any application that can be written in JavaScript, will eventually be written in JavaScript.
p 任何可以使用JavaScript来实现的应用都最终都会使用JavaScript实现。
n 其实我们已经看到了,这句话正在一步步被应验:
p Web端的开发我们一直都是使用JavaScript;
p 移动端开发可以借助于ReactNative、Weex、Uniapp等框架实现跨平台开发;
p 小程序端的开发也是离不开JavaScript;
p 桌面端应用程序我们可以借助于Electron来开发;
p 服务器端开发可以借助于Node环境使用JavaScript来开发。
JavaScript一门优秀的语言
coderwhy
n 并且随着近几年前端领域的快速发展,让JavaScript迅速被普及和受广大开发者的喜爱,借助于JavaScript本身的
强大,也让使用JavaScript开发的人员越来越多。
n 优秀的JavaScript没有缺点吗?
p 其实上由于各种历史因素,JavaScript语言本身存在很多的缺点;
p 比如ES5以及之前的使用的var关键字关于作用域的问题;
p 比如最初JavaScript设计的数组类型并不是连续的内存空间;
p 比如直到今天JavaScript也没有加入类型检测这一机制;
n JavaScript正在慢慢变好
p 不可否认的是,JavaScript正在慢慢变得越来越好,无论是从底层设计还是应用层面。
p ES6、7、8等的推出,每次都会让这门语言更加现代、更加安全、更加方便。
p 但是知道今天,JavaScript在类型检测上依然是毫无进展(为什么类型检测如此重要,我后面会聊到)。
JavaScript的痛点
coderwhy
n 首先你需要知道,编程开发中我们有一个共识:错误出现的越早越好
p 能在写代码的时候发现错误,就不要在代码编译时再发现(IDE的优势就是在代码编写过程中帮助我们发现错
误)。
p 能在代码编译期间发现错误,就不要在代码运行期间再发现(类型检测就可以很好的帮助我们做到这一点)。
p 能在开发阶段发现错误,就不要在测试期间发现错误,能在测试期间发现错误,就不要在上线后发现错误。
n 现在我们想探究的就是如何在 代码编译期间 发现代码的错误:
p JavaScript可以做到吗?不可以,我们来看下面这段经常可能出现的代码问题。
类型带来的问题
coderwhy
n 这是我们一个非常常见的错误:
p 这个错误很大的原因就是因为JavaScript没有对我们传入的参数进行任何的限制,只能等到运行期间才发现这个
错误;
p 并且当这个错误产生时,会影响后续代码的继续执行,也就是整个项目都因为一个小小的错误而深入崩溃;
n 当然,你可能会想:我怎么可能犯这样低级的错误呢?
p 当我们写像我们上面这样的简单的demo时,这样的错误很容易避免,并且当出现错误时,也很容易检查出来;
p 但是当我们开发一个大型项目时呢?你能保证自己一定不会出现这样的问题吗?而且如果我们是调用别人的类
库,又如何知道让我们传入的到底是什么样的参数呢?
n 但是,如果我们可以给JavaScript加上很多限制,在开发中就可以很好的避免这样的问题了:
p 比如我们的getLength函数中str是一个必传的类型,没有调用者没有传编译期间就会报错;
p 比如我们要求它的必须是一个String类型,传入其他类型就直接报错;
p 那么就可以知道很多的错误问题在编译期间就被发现,而不是等到运行时再去发现和修改;
类型错误
剩余31页未读,继续阅读
陈莽昆
- 粉丝: 22
- 资源: 291
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0