ts函数讲解与不确定参数是否使用以及限制返回类型

简介: ts函数讲解与不确定参数是否使用以及限制返回类型

1.声明式函数


函数有两个参数 参数的数据类型是 string number  


返回值值 number 哈


function person(name: string, age: number): number {
    return age;
}
var ageNum: number = person("zahngs", 10);
console.log(ageNum);


2.姓别参数不确定使用 有可能没有性别哈。


function person2(name: string, sex?: string): string {
    return name;
}
var name2: string = person2("张三", "sex");
console.log(name2);


3.函数参数的默认值


function person(name: string = "张三", age: number = 10): number {
    return age;
}
var p: number = person();
console.log(p);


4类型断言


//在进行类型断言的时候,必须断言成一个联合类型中存在的类型
下面这个例子 只能够断言成 字符串或者是数字。
function getAsse(name: string | number) {
   // return (<string>name).length //第一种  
   return (name as string).length; //第二种 react 中使用这一种
}


5求和哈 运用了扩展运算符哦


<!-- 使用了扩展运算符 将它变成一个伪数组 ...result -->
function sum(...result: number[]): number {
var sum = 0;
for (var i = 0; i < result.length; i++) {
sum += result[i];
}
return sum;
}
console.log(sum(1, 2, 34, 5)); //42


6.typescript 中方法的重载 es 这样也可以去做重载 同样根据参数的类型去判断


//根据参数的类型去判断
function getINfo(str: any): any {
if (typeof str === "string") {
return "我叫" + str;
} else if (typeof str === "number") {
return "我今年" + str;
}
}
console.log(getINfo(10)); //我今年 10


原生 es
function getINfo(str) {
if (typeof str === "string") {
return "我叫" + str;
}
else if (typeof str === "number") {
return "我今年" + str;
}
}
console.log(getINfo(10));


7.typeScript中函数类型


函数类型:通过调用接口的方式作为函数的类型来使用


实现一个功能


在str1中查找是否有str2;


如果有返回true,否者返回false


// 定义一个接口,用来作为某个函数的类型使用
interface ISearchHas {
    (str1:string,str2:string) : boolean
}
//定义一个函数,函数类型就是上面定义的接口
const lookforhas: ISearchHas = function(str1:string,str2:string) :boolean{
    return str1.search(str2) > -1
}
console.log(lookforhas("hello",'o'));//true
相关文章
|
11天前
|
JavaScript 前端开发 Java
TypeScript 类型兼容性
TypeScript 类型兼容性
|
11天前
|
JavaScript 前端开发
typescript 混合类型
typescript 混合类型
|
5天前
|
前端开发 JavaScript 安全
TypeScript作为一种静态类型的JavaScript超集,其强大的类型系统和面向对象编程特性为微前端架构的实现提供了有力的支持
【6月更文挑战第11天】微前端架构借助TypeScript提升开发效率和代码可靠性。 TypeScript提供类型安全,防止微前端间通信出错;智能提示和自动补全加速跨代码库开发;重构支持简化代码更新。通过定义公共接口确保一致性,用TypeScript编写微前端以保证质量。集成到构建流程确保顺利构建打包。在微前端场景中,TypeScript是强有力的语言选择。
23 2
|
7天前
|
JavaScript 前端开发 安全
TypeScript:静态类型的动态语言
【6月更文挑战第9天】TypeScript是JavaScript的静态类型超集,解决JS类型安全问题,提供更强的代码组织和维护。它引入静态类型、接口和类,增强类型安全,减少运行时错误。TS与JS无缝集成,兼容现有库和框架,拥有丰富的开发工具和活跃社区。广泛应用在各种规模项目中,尤其提升复杂前端应用的代码质量。学习TypeScript对提升开发效率和代码可靠性极具价值。
20 10
|
11天前
|
JavaScript 算法
TypeScript 类型推论
TypeScript 类型推论
|
11天前
|
JavaScript
TypeScript 泛型类型
TypeScript 泛型类型
|
11天前
|
JavaScript 前端开发 编译器
typescript 推断类型
typescript 推断类型
|
11天前
|
JavaScript Java C#
typescript 类类型
typescript 类类型
|
11天前
|
JavaScript 前端开发 索引
typescript 可索引的类型
typescript 可索引的类型
|
11天前
|
JavaScript 前端开发
typescript 函数类型
typescript 函数类型