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

    let list1: number[] = [1,2,3,4]

    let list2: Array<number> = [1,2,3,4]

    let list3 = [1,2,3,4]

    let list4 = [1,'aa']

    let list5: any[] = [1,'aa',true]

    元组 tuple(固定长度、固定类型的数组,声明元组的时候一定要指明类型,bug:使用 .push() 可以突破元组的界限,无限的给元组添加长度)

    let person1: [number, string] = [1, 'lulingkun']

    元组是一个特殊的数组,是固定长度固定类型的数组

    元组bug:person1[2] = 3; 报错,但 person1.push(3) 不报错可以通过编译

    let person2 = [1, 'lulingkun']; 这不是元组类型,而是union array,联合类型数组,本质上就是数组,既没有固定长度也没有固定类型,是混合number和string的类型

    查看全部
  • 给函数的参数设置取值类型

    function add (n1: number, n2: number) {

        return n1 + n2;

    }

    自动映射数据类型

    let isTrue = true;

    手动指定数据类型

    let total: number = 0;

    查看全部
  • string 字符串类型

    "hello"

    'hello'

    `hello`

    查看全部
  • 高级类型

    union 组合类型

    nullable 可空类型

    literal 预定义类型

    查看全部
  • typescript 的基本类型

    boolean、string、number、array、object、null、undefined

    tuple、enum、void、never、any

    查看全部
  • var 没有 block 作用域,在 JavaScript 中可以无限次数声明和使用,导致内存泄漏

    推荐使用:

    const 声明常量

    let 声明变量(解决 var 中带来的作用域混论的问题)

    查看全部
    0 采集 收起 来源:变量声明

    2021-07-27

  • 热味儿

    查看全部
  • interface IPoint {

      drawPoint: () => void;

      getDistance: (p: IPoint) => number;

      // getter  setter 正常写法

      // getX:()=>number;

      // setX:(value)=>void;

      // getY:()=>number;

      // setY:(value)=>void;

      // 懒人包写法

      X: number;

      Y: number;

    }



    class newPoint implements IPoint {

      constructor(private x: number, private y: number) {

        console.log(`在 constructor 中,x is ${x},y is ${y}`);

      }

      drawPoint = () => {

        console.log(`x : ${this.x}, y : ${this.y}`);

      }

      getDistance = (p: IPoint) => {

        return Math.sqrt(Math.pow(p.X - this.x, 2) + Math.pow(p.Y - this.y, 2));

        // return 0;

      }

      // 懒人包写法

      get X() {

        return this.x;

      }

      set X(value: number) {

        this.x = value;

      }

      get T() {

        return this.y;

      }

      set Y(value: number) {

        this.y = value;

      }

      // 正常写法

      // setX =(value:number)=>{

      // if(value<0){

      // throw new Error("value 不能小于0")

      // }

      // this.x=value;

      // }

      // setY =(value:number)=>{

      // if(value<0){

      // throw new Error("value 不能小于0")

      // }

      // this.y=value;

      // }

      // getX=()=>{

      // return this.x;

      // }

      // getY=()=>{

      // return this.y;

      // }

    }

    查看全部
    1. 声明数据的三种方式:

      http://img1.mukewang.com/60fbd579000145ab04040152.jpg

      这三种声明方式都表示数值类型

    2. 可以用以下两种方式声明数组元素的类型

      http://img.mukewang.com/60fbd60a0001bad304060079.jpg

      第一种表示数组里面只能存放number和string类型的元素

      第二种any表示可以存放任意一种类型

    3. 元组为固定类型固定长度的数组

      http://img.mukewang.com/60fbd7e60001b4a504260040.jpg

      上图中第一个类型必须为数值类型,第二个类型必须为字符类型,否则会报错。

    使用元祖的注意事项:

    • 目前尚有bug,慎用

      http://img.mukewang.com/60fbd8fd00019aa902550080.jpg

      图中元祖只能是2个元素不能有3个元素然后没有报错

    • 使用元祖必须指明类型,否则它就是普通数组

      http://img2.mukewang.com/60fbd9830001630c03020129.jpg

    查看全部
  • 变量类型:

    http://img1.mukewang.com/60fbd3e90001071807140450.jpg

    http://img1.mukewang.com/60fbd3ff000171d507570469.jpg

    查看全部
  • 声明变量:

    http://img.mukewang.com/60fbd39b0001e30b03950113.jpg

    查看全部
  • TypeScript的产生:

    1. Typing 强类型

    • 规范代码

    • 代码编译阶段就能及时发现错误

    • 在原生JS的基础上加上了一层类型定义

    TypeScript的优势:

    http://img2.mukewang.com/60fb7d36000182ce07090455.jpg

    为什么要使用TypeScript?

    • 类型推演和类型匹配

    • 开发编译报错

    • 极大程度的避免了低级错误

    • 支持JavaScript最新特性(包含ES6\7\8)

    例子:

    http://img2.mukewang.com/60fb7f3b0001f7df05360309.jpg

    查看全部
  • 课程大纲

    http://img.mukewang.com/60fb7b6b000130ba08570493.jpg

    查看全部
    0 采集 收起 来源:课程大纲

    2021-07-24

  • TypeScript:强类型

    查看全部
  • 数据类型

    查看全部
    0 采集 收起 来源:课程大纲

    2021-07-06

举报

0/150
提交
取消
课程须知
学习中需要用到这些工具: —visual studio code 代码编辑器 —tsc TypeScript编译器 —nodejs SDK 你需要有这些基础: —可以使用原生JavaScript,有es6的基础知识更佳
老师告诉你能学到什么?
1、学习TypeScript基础知识 2、了解Typescriptg工作流程以及编译原理 3、掌握TypeScript开发配置以及各种常用工具 4、掌握前端静态类型思想 5、深入了解前端面对对象概念

微信扫码,参与3人拼团

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

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