码迷,mamicode.com
首页 > 其他好文 > 详细

[TypeScript语法]第二章:函数

时间:2021-02-19 13:10:04      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:script   上下文   定义   --   配置   def   函数调用   settime   第一个   

函数

定义函数

//定义函数
function run():string{
    return ‘hello world‘;
}
//函数调用
run();

匿名函数

var fun2=function():number{
    return 123;
}
alert(fun2);

方法传参

function getInfo(name:string,age:number):string{
    return `${name}---${age}`;
}
alert(getInfo(‘张三‘,20));

没有返回值的方法

function run():void{
    console.log(‘run‘);
}
run();

可选参数

//?通过问号配置,可选参数必须放在后面
function getInfo(name:string,age?:number):string{
        return `${name}---${age}`;
}
console.log(getInfo(‘张三‘));//张三---undefined
console.log(getInfo(‘张三‘,25));//张三----25

默认参数

//设置默认参数的即使不传参数也不会报错
function getInfo(name:string,age:number=20):string{
    return `${name}---${age}`;
}
console.log(getInfo(‘张三‘));//张三---20
console.log(getInfo(‘张三‘,25));//张三---25

剩余参数

// 三点运算符接受形参传过来的值
function sum(a:number,...result:number[]):number{
    var sum=a;
    for(var i=0;i<result.length;i++){
        sum+=result[i];
    }
    return sum;
}
alert(sum(1,2,3,4));

函数重载

function getInfo(name:string):string;
function getInfo(age:number):string;
function getInfo(str:any):any{

    if(typeof str===‘string‘){
        return ‘我叫‘+str;
    }else
    {
        return ‘我的年龄是‘+str;
    }

}
console.log(getInfo(‘zhansan‘));//正确重载第一个方法
console.log(getInfo(25));///正确重载第二个方法
//alert(getInfo(true));//错误,没法重载

箭头函数

//this指向的问题 箭头函数里面的this指向上下文
setTimeout(() => {
    alert(‘run‘);
}, 1000);

[TypeScript语法]第二章:函数

标签:script   上下文   定义   --   配置   def   函数调用   settime   第一个   

原文地址:https://www.cnblogs.com/TobuTobu/p/14409249.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!