一、数组的类型
类型[ ]
//类型加中括号
let arr:number[] = [123]
//这样会报错定义了数字类型出现字符串是不允许的
let arr:number[] = [1,2,3,'1']
//操作方法添加也是不允许的
let arr:number[] = [1,2,3,]
arr.unshift('1')
var arr: number[] = [1, 2, 3]; //数字类型的数组
var arr2: string[] = ["1", "2"]; //字符串类型的数组
var arr3: any[] = [1, "2", true]; //任意类型的数组
数组泛型
规则 Array<类型>
let arr:Array<number> = [1,2,3]
any 在数组中的应用
let arr:any[] = ['1', 1, true, {a: 1}]
// any类型 数组什么类型都可以放
二、函数的类型
注意,参数不能多传,也不能少传 必须按照约定的类型来
const fn = (name: string, age: number):string => {
return name + age
}
fn('wang', 18)
函数的可选参数?
const fn = (name: string, age?: number):string => {
return name + age
}
fn('wang')
函数参数的默认值
const fn = (name: string = 'wang') => {
return name
}
fn()
接口定义函数
//定义参数 num 和 num2 :后面定义返回值的类型
interface Add {
(num: number, num2: number): number
}
const fn: Add = (num: number, num2: number): number => {
return num + num2
}
console.log(fn(5, 5));
// interface关键字表示使用接口方式定义函数,注意这里的函数只是定义,并不实现
interface User{
name: string;
age: number;
}
function getUserInfo(user: User): User {
return user
}