TypeScript学习笔记(七):函数及Lambads与this关键字的使用

这篇博客详细介绍了TypeScript中函数的定义方式,包括普通函数和Lambda表达式的使用,以及可选参数、默认参数、可变参数的特性。同时,文章探讨了Lambda表达式如何与`this`关键字配合,并通过重载展示了函数的多态性。内容涵盖了TypeScript函数的核心概念,适合想要深入理解TypeScript编程的开发者阅读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TypeScript函数

函数定义的两种方式:
1.

let log=function(message){
    cosole.log(message);
}
let log2=(message:string)=>{    //可以给函数绑定它的类型,函数中的语句只有一句时,{}可以省略
  cosole.log(message);
}
log2("hello");  //参数只能传递string类型
let log3=(message:string,code:number)=>{
   cosole.log(message,code);
}
log3("hello",2);  //到用这个函数时,必须传指定类型的两个参数

可选参数:

let log4=(message:string,code?:number)=>{  
   cosole.log(message,code);
}
log3("hello");  //code后面加入?(必须加在可选参数的末尾参数),调用时可省略此参数 ,code会被默认设定为undefined

默认参数:

let log5=(message:string,code:number=0)=>{
   cosole.log(message,code);
}
log3("hello");  //再不输入code的值的情况下,默认code=0
log3("hello",2);   //当输入了新数据会覆盖默认值

可变参数:

function peopleName(firstName:string,...restOfname:string[]){    //调用时可输入多个参数
  return firstName+""+restOfname.join(" ");
}

Lambads与this关键字的使用
举例:

let people={     //随机获取一个name
   name:["iwen","ime","if","bean"],
   getName:function(){
     return()=>{   //引入lambans
       let i=Math.floor(Math.random()+4);
       return{
         n:this.name[i];  //使用Lambans后可以调用this.name
       }
     }
  }
}

重载
举例:

function attr(name:string):string;
function attr(age:number):number;
function attr(nameorage:any){
 if(nameorage&&typeof nameorage==="string"){
   alert("姓名");
 }
 else{
   alert("年龄")}
}
attr("Hello");
attr(10);
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_sophia

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值