【愚公系列】2021年12月 Typescript-函数的使用

举报
愚公搬代码 发表于 2021/12/26 15:04:33 2021/12/26
【摘要】 前言函数是一组一起执行一个任务的语句。您可以把代码划分到不同的函数中。如何划分代码到不同的函数中是由您来决定的,但在逻辑上,划分通常是根据每个函数执行一个特定的任务来进行的。函数声明告诉编译器函数的名称、返回类型和参数。函数定义提供了函数的实际主体。提示:以下是本篇文章正文内容,下面案例可供参考 一、函数的使用//函数声明function run():string{ return '...

前言

函数是一组一起执行一个任务的语句。

您可以把代码划分到不同的函数中。如何划分代码到不同的函数中是由您来决定的,但在逻辑上,划分通常是根据每个函数执行一个特定的任务来进行的。

函数声明告诉编译器函数的名称、返回类型和参数。函数定义提供了函数的实际主体。


提示:以下是本篇文章正文内容,下面案例可供参考

一、函数的使用

//函数声明
function run():string{
    return 'run'; 
    // return 123;  //错误
}

//函数表达式
var run2=function test():number{
    return 123;
}
alert(run2());

//方法传参
function getInfo(name:string,age:number):string{
  return `${name} ----${age}`;
}

alert(getInfo('alice',20))

//没有返回值的方法
function run3():void{
   console.log('run3')
}
run3()
// 注意:可选参数必须配置到参数的最后面


function getInfo(name:string,age?:number):string{
 
  if(age) {
      return `${name} ----${age}`;
  } else {
      return `${name} ----年龄保密`;
  }
} 
//默认参数


function getInfo(name:string,age:number=20):string{
  return `${name} ----${age}`;
}
//三点运算符 接受新参传过来的值
// 注意多个参数的,不能传入一个数据

function sum2(...result:number[]):number {

    var sum = 0;
    for(var i=0;i<result.length;i++) {
        sum+= result[i];
    }
     return sum;
}

alert(sum2(1,2,3,4,8,9)) 


function sum3(a:number,b:number,...result:number[]):number {

    var sum = a+b;
    for(var i=0;i<result.length;i++) {
        sum+= result[i];
    }
     return sum;
}

// alert(sum3(1,2,3,9))
var arr04:number[] = [3,9,8];
var p2 = sum3(1,2,...arr04)
console.log('p2:'+p2)


// ts中的重载

function getInfo(name:string):string;
function getInfo(age:number):string;

function getInfo(str:any):any {
    if(typeof str=='string'){
        return '我叫'+str
    } else {
        return '我的年龄是'+str
    }
};

alert(getInfo('张三')); // 正确
alert(getInfo(20)); // 正确 


type str= string; //类型别名
var username:str = 'laney';

function fun6(name:str):str{
   return 'hello ' +name;
}
alert(fun6(username))

type abc = string | number[];
type num = number;

function fun7(a:abc):num{
    return a.length;
}

alert(fun7([1,2,3])); 
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。