继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【九月打卡】第21天 Typescript 函数类型

stb烙饼
关注TA
已关注
手记 84
粉丝 2
获赞 4

课程章节: 第3章 TypeScript 基础 3-10 函数类型

主讲老师阿莱克斯刘

课程内容:

今天学习的内容是 Typescript 的函数类型。

函数的声明方式

在 JS 中声明函数的常用方式有三种:

1.使用 function关键字声明:

function log(message) {
    console.log(message)
}

2.使用 letconst 关键字声明一个函数表达式:

const log = function (message) {
    console.log(message)
}

3.使用箭头函数:

const add = (a, b) => a + b

在 TS 中声明函数的方法和 JS 中一致,但是需要对参数和返回加上类型限制。比如 add 函数:

const add = (a: number, b: number) : number => a + b;

let res = add(10, 20);

如果实参类型和形参类型不一致,编辑器就会报错:

let res = add(10, '20'); // Argument of type 'string' is not assignable to parameter of type 'number'.

string 类型的实参不能赋值带 number 类型的参数。

并且,函数调用时实参的个数必须和形参保持一致:

let res = add(10); // 报错:An argument for 'b' was not provided.

参数 b没有提供。

TS 也支持可选参数,需要在定义函数时,将可选的参数使用 ? 表示:

const log = (code: number, message?: string)  => {
    console.log(code, message)
}

log(200, 'Ok'); // 200 Ok
log(404); // 400 undefined

TS 函数也支持参数默认值:

const log = (code: number=200, message: string="Ok")  => {
    console.log(code, message)
}

log(); // 200 Ok

课程收获
这节课学习了 Typescript 的函数类型,和 JS 中使用的区别就是注意在定义函数签名时需要给参数和返回值确定类型。
图片描述

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP