TypeScript系列 4.数组类型
本系列知识部分基于小满 ZS 的TypeScript 系列教程。我也会补充一些视频没有的内容。
数组类型#
1. 基本类型#
let arr: number[] = [1, 2, 3];
let arr1: boolean[] = [true, true, false];
//使用泛型
let arr2: Array<boolean> = [true, true, false];
2. 对象类型#
interface Student {
name: string;
}
let arr: Student[] = [{ name: "张三" }, { name: "李四" }];
//使用泛型
let arr1: Array<Student> = [{ name: "张三" }, { name: "李四" }];
3. 二维数组#
let arr1: number[][] = [
[1, 2, 3],
[4, 5, 6],
];
//使用泛型
let arr2: Array<Array<number>> = [
[1, 2, 3],
[4, 5, 6],
];
4. 任意类型#
let arr8: any[] = [1, "sss", {}]
5. 混合类型数组#
使用元组定义混合类型
let arr9: [number, string, {}] = [1, "sss", {}]
6. 函数剩余参数#
函数剩余参数,也是可以被约束类型的。
//计算传入数值的和
function sum(...args: number[]) {
return args.reduce((pre, cur) => {
return pre + cur;
});
}
7. arguments#
在ES6之前,是没有剩余参数的,可以使用arguments
,获取全部参数(ES6之后依然有效)。
ts中为arguments
提供了一个接口叫IArguments
,可以使用这个接口来引用arguments
:
function fn(...args: any[]) {
let a: IArguments = arguments;
}
模拟IArguments#
IArguments 可替换为下面的接口,主要就是callee、length和索引签名
interface A {
callee: Function;
length: number;
[index: number]: any;
}
作者:sq800
出处:https://www.cnblogs.com/sq800/p/17549162.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
2021-07-12 二叉树的先序遍历、中序遍历、后序遍历-C语言描述