函数的类型
const fn = (name: string, age:number): string => {
return name + age
}
fn('张三',18)
函数的可选参数
const fn = (name: string, age?:number): string => {
return name + age
}
fn('张三')
函数参数的默认值
const fn = (name: string = "我是默认值"): string => {
return name
}
fn()
接口定义函数
interface Add {
(num: number, num2: number): number
}
const fn: Add = (num: number, num2: number): number => {
return num + num2
}
fn(5, 5)
interface User{
name: string;
age: number;
}
function getUserInfo(user: User): User {
return user
}
函数重载
let yioo: number[] = [1, 2, 3, 4]
function findNum(add: number[]): number[]
function findNum(id: number): number[]
function findNum():number[]
function findNum(ids?: number | number[]) {
if (Array.isArray(ids)) {
yioo.push(...ids);
return yioo
}
else if (typeof ids == 'number') {
return yioo.filter(y => y == ids)
}
else {
return yioo
}
}
console.log(findNum());
console.log(findNum(1));
console.log(findNum([5,6,7]));