资讯专栏INFORMATION COLUMN

拥抱TypeScript

Java3y / 1679人阅读

摘要:入门基本类型和扩展类型与共享相同的基本类型,但有一些额外的类型。枚举类型是对标准数据类型的一个补充。像等其它语言一样,使用枚举类型可以为一组数值赋予友好的名字。

TypeScript入门 基本类型和扩展类型

TypescriptJavascript共享相同的基本类型,但有一些额外的类型。

元组Tuple

枚举enum

AnyVoid

never

基本类型

</>复制代码

  1. // 数字
  2. let num: number = 6;
  3. let num: number = 0xf00d;
  4. // 字符串
  5. let name: string = "bob";
  6. // 数组,第二种方式是使用数组泛型,Array<元素类型>:
  7. let list: number[] = [1, 2, 3];
  8. let list: Array = [1, 2, 3];
  9. let list: any[] = [1,2,3,"4"];
  10. // symbol
  11. let s:symbol = Symbol("s");
  12. // boolean
  13. let isTrue: boolean = true;
  14. // undefined
  15. let u: undefined = undefined;
  16. // null
  17. let n: null = null;
  18. // 定义多种类型
  19. let s:string|undefined;
特殊类型

元组Tuple

元组作为有组织的数组,需要以正确的顺序预定义数据类型。

</>复制代码

  1. const tuple: [number, string, string] = [24, "Indrek" , "Lasn"];
  2. const arr3:[string, number] = ["12",1];

枚举enum

enum类型是对JavaScript标准数据类型的一个补充。 像C#等其它语言一样,使用枚举类型可以为一组数值赋予友好的名字。

</>复制代码

  1. enum Flag {
  2. success = 0,
  3. error = 1
  4. }
  5. let c: Flag = Flag.success; // 0
  6. let d: string = Flag[0]; // success

Any

表示任意类型,慎重使用,用多了就失去使用Ts的意义

用于类型不明确的情况

Void

在Typescript中,你必须在函数中定义返回类型

我们可以将其返回值定义为void

用void定义的函数不能写return

</>复制代码

  1. function run():void{
  2. console.log("run")
  3. }

never

Never是永远达不到的值

</>复制代码

  1. // 返回never的函数必须存在无法达到的终点
  2. function error(message: string): never {
  3. throw new Error(message);
  4. }
  5. // 推断的返回值类型为never
  6. function fail():never {
  7. return error("Something failed");
  8. }
  9. // 返回never的函数必须存在无法达到的终点
  10. function infiniteLoop(): never {
  11. while (true) {
  12. }

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/104939.html

相关文章

  • React项目从Javascript到Typescript的迁移经验总结

    摘要:面对越来越火的,我们公司今年也逐渐开始拥抱。综上所述,我个人觉得是要删除相关的东西,降低项目复杂度。但是有一个例外情况。这个配置项有三个值可选择,分别是和。模式会生成,在使用前不需要再进行转换操作了,输出文件的扩展名为。 抛转引用 现在越来越多的项目放弃了javascript,而选择拥抱了typescript,就比如我们熟知的ant-design就是其中之一。面对越来越火的typesc...

    zhisheng 评论0 收藏0
  • Deno 并不是下一代 Node.js

    摘要:长文预警字,图。开发并不是因为,也不是为了取代。不知道从官方介绍来看,可以认为它是下一代是如何脑补出来的。只是一个原型或实验性产品。所以,不是要取代,也不是下一代,也不是要放弃重建生态。的目前是要拥抱浏览器生态。 这几天前端圈最火的事件莫过于 ry(Ryan Dahl) 的新项目 deno 了,很多 IT 新闻和媒体都用了标题:下一代 Node.js。这周末读了一遍 deno 的源码,...

    mmy123456 评论0 收藏0
  • 前端周刊第59期:选 Flow 还是 TypeScript

    摘要:周末是时隔两月的家人团聚,而每次内容的准备平均需要我集中精力工作小时,所以第期的内容今早才准备好,对不住大家了。下面是本周精选内容,请享用。本文作者王仕军,商业转载请联系作者获得授权,非商业转载请注明出处。 showImg(https://segmentfault.com/img/remote/1460000009742537?w=1240&h=509); 周末是时隔两月的家人团聚,而...

    Julylovin 评论0 收藏0
  • [译]学习如何去学习 JavaScript - 5 个你应该如何花在学习 JS 上时间的建议

    摘要:拥抱异步编程纵观发展史也可以说成开发的发展史,你会发现异步彻底改变了这场游戏。可以这么说,异步编程已成为开发的根基。这也是你应尽早在上投入大量时间的一处核心知识点,这其中包含和等重要概念。这也是最突出的一项贡献。 原文地址:Medium - Learning How to Learn JavaScript. 5 recommendations on how you should spend ...

    wanglu1209 评论0 收藏0
  • 2017-10-14 前端日报

    摘要:前端日报精选译中多样的原理与跨域前端重构感想创建一条通用链表在生产环境中直接部署代码绑定过程和其中的一些坑的总结拖拽作业组件设计中文第期前端之切切切切切图动画实现菜单特效腾讯前端团队社区布局探索之路依然最受欢迎,开发者年度报告还能 2017-10-14 前端日报 精选 [译] Javascript 中多样的 thisAJAX原理与CORS跨域前端重构感想js创建一条通用链表在生产环境中...

    nifhlheimr 评论0 收藏0

发表评论

0条评论

Java3y

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<