请选择 进入手机版 | 继续访问电脑版

HTML5星空

TypeScript是要学的了

[复制链接]
发表于 2020-6-28 22:40:11 | 显示全部楼层 |阅读模式

JavaScript最具吸引力的一个特点就是“(语法)自由”,代码编写者最大程度地享受到了`想怎么写就可以怎么写`的权利。但最鲜明的优点往往是其缺点所在,过于缺乏“规矩”,让JS一直表现得比较脆弱,尽管它足够灵活,而且充满活力。

TypeScript在遵循JavaScript和其特性的基础上,对其进行了足够好的扩展。对于JSer来说,它几乎没有学习门槛,极易上手,而且提供了静态类型、类型注解、类、模块和接口等扩展,比较精准解决了JS在开发中面临的多数痛点,似乎让我们看到了“JavaScript未来的样子”。

下面我们用 一个小的`冒泡排序`示例来了解下TypeScript:

  1. class TestArray {

  2. // 在Typescript中,每个成员是被默认为公有的

  3. private array: Array<number> = [];


  4. // TestArray的构造函数

  5. constructor(initialArray: number[] = []) {

  6. this.array.push(...initialArray);

  7. }


  8. // 添加数组元素(类型注释是可忽略的)

  9. push(item: number): void {

  10. this.array.push(item);

  11. }


  12. // 数组排序

  13. sort(): void {

  14. const array = this.array;

  15. const len = array.length;

  16. const exchange = (a: number[], i1: number, i2: number) => {

  17. [a[i1], a[i2]] = [a[i2], a[i1]];

  18. };


  19. for (let i = 0; i < len; i++) {

  20. for (let j = 0; j < (len - 1 - i); j++) {

  21. if (array[j] > array[j + 1]) {

  22. exchange(array, j, j + 1);

  23.         }

    }

    }

    }


  24. // 打印数组

  25. log(): void {

  26. console.log('array: ', this.array.join(' '));

  27. }

  28. }


  29. const array = new TestArray([6, 8, 1, 5, 2, 4]);

  30. array.log(); // array:  6 8 1 5 2 4

  31. array.push(0);

  32. array.sort();

  33. array.log(); // array:  0 1 2 4 5 6 8

以上 _


祝:



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

更多资源及Java+大数据个人原创视频,
可关注本站官方公众号观看:
快讯

     京ICP备14042305号

html5star team © 2012-2013 html5星空 Comsenz Inc.

GMT+8, 2020-7-10 07:50 , Processed in 0.387650 second(s), 36 queries .

快速回复 返回顶部 返回列表