TypeScript 数组的类型

最简单的方法是使用「类型 + 方括号」来表示数组

let fibonacci: number[] = [1, 1, 2, 3, 5];

数组的项中不允许出现其他的类型:

数组的一些方法的参数也会根据数组在定义时约定的类型进行限制:

let fibonacci: number[] = [1, 1, 2, 3, 5];

fibonacci.push('8');

// index.ts(2,16): error TS2345: Argument of type 'string' is not assignable to parameter of type 'number'.

上例中,push 方法只允许传入 number 类型的参数,但是却传了一个 string 类型的参数,所以报错了。

数组泛型定义

let fibonacci: Array = [1, 1, 2, 3, 5];

用接口表示数组

interface NumberArray {

[index: number]: string;

}

let fibonacci: NumberArray = ["a","n"];

NumberArray 表示:只要 index 的类型是 number,那么值的类型必须是 string

any在数组中的应用

let list: any[] = ['Xcat Liu', 25, { website: 'http://xcatliu.com' }];

类数组

类数组(Array-like Object)不是数组类型,比如 arguments:

function sum() {

let args: number[] = arguments;

}

// index.ts(2,7): error TS2322: Type 'IArguments' is not assignable to type 'number[]'.

// Property 'push' is missing in type 'IArguments'.

事实上常见的类数组都有自己的接口定义,如 IArguments, NodeList, HTMLCollection 等

function sum() {

let args: IArguments = arguments;

}

ts定义数组类型_TypeScript 数组的类型相关推荐

  1. typescript索引类型_TypeScript的索引类型与映射类型,以及常用工具泛型的实现

    相信现在很多小伙伴都在使用 TypeScript(以下简称 TS),在 TS 中除了一些常用的基本类型外,还有一些稍微高级一点的类型,这些就是我本次文章要讲的内容:索引类型与映射类型,希望小伙伴们看过 ...

  2. ts定义数组类型_ts基本数据类型

    typescript基础数据类型 布尔值 示例代码 最基本的数据类型就是简单的true/false值,在JavaScript和TypeScript里叫做boolean(其它语言中也一样). let a ...

  3. ts定义数组类型_ts中类型

    /* 1.vscode配置自动编译 1.第一步   tsc --inti 生成tsconfig.json   改 "outDir": "./js", 2.第二步 ...

  4. ts定义数组类型_ts基本类型

    TS中的常用的数据类型有 (内置类型)Number, String, Boolean, Null, Undefined, Void, enum,Array,Any,Object,元组, 接口等 数字类 ...

  5. vue3之组件通信 (props父传子,子传孙)(ts定义数组类型)

    目录 vue3之组件通信 1 props父传子,子传孙 1-1 父组件 1-2 子组件 1-3 孙组件 2:父子传值 2:-1 父组件向子组件传值 Props 2-2 子组件向父组件传值 emit 3 ...

  6. ts定义数组类型_TS - 基础类型

    数字 和 JavaScript 一样,TypeScript 里的所有数字都是浮点数. 这些浮点数的类型是 number. 除了支持十进制和十六进制字面量,TypeScript 还支持 ECMAScri ...

  7. ts定义数组类型_TS定义对象数组

    定义兼容性对象数组T 表示传入的类型,可以为number.string.boolean等 传入什么label就是什么类型 interface labelValue { label: T; value: ...

  8. ts定义数组类型_TS如何定义和使用对象数组

    展开全部 数组的定义: 1.类型 + 方括号: 比如: 636f70793231313335323631343130323136353331333431373933 let  tsArray: num ...

  9. 定义一个抽象类一水果,创建若干水果对象存放在-一个水果类型的数组中,输出数组中所有水果的类型、重量

    ****定义一个抽象类一水 果,其中包括getWeightQ方法,编写程序分别创建苹果.桃子.橘子3个类,创建若干水果对象存放在-一个水果类型的数组中,输出数组中所有水果的类型.重量.提示:利用对象的 ...

最新文章

  1. antimalware service executable占用内存过高_Win10系统svchost.exe进程占用内存和网速过高的解决方法...
  2. 费解 | 为什么很多程序员工作时都戴耳机?
  3. 机器学习中倒三角符号_机器学习的三角误差
  4. Python实现二叉树的遍历
  5. [转贴]非技术:在广州天河北被抢全记录(入面D广州话真系厉害,不懂粤语者别看,会吐血)...
  6. 跟着辛星用PHP的反射机制来实现插件
  7. 索尼a5100_索尼a5100有什么接口
  8. iproute2 对决 net-tools
  9. quarts集群 运维_Quartz.Net分布式运用
  10. 关于raw_input()和sys.stdin.readline()的区别
  11. 蛙人高频交易拆单策略—蛙人高频软件结构及使用说明
  12. 数据挖掘基础学习笔记
  13. python爬取的代码_零基础掌握百度地图兴趣点获取POI爬虫(python语言爬取)(代码篇)...
  14. 阿里达摩院招聘 Research Intern
  15. thinkpad x250装黑苹果教程_ThinkPad E450c 傻瓜式黑苹果一键安装教程
  16. 北京奖励专精特新企业补贴有哪些及怎么建设重点介绍,补贴20-50万
  17. 微前端MicroApp的学习(一):简单搭建项目
  18. dotween 的学习1.DoTween.To()的了解
  19. 学习笔记——Kaggle_Digit Recognizer (SVM算法 Python实现)
  20. Unity URP shader 出现 SRP Batcher 为 not compatible时 渲染性能会下降 应该怎么处理 ?

热门文章

  1. 浏览器“四巨头”首度合作 解决网页适配问题
  2. 开源项目征集 | CSDN “开源加速器计划”之【开源技术栈选型 Show】
  3. 进阶必看的 RocketMQ ,就这篇了!
  4. 程序员爬取 5000+ 口红数据,差点比女朋友更懂口红?
  5. 高考进行时,AI 监考老师已就位!
  6. 清华学霸组团的工业 AIoT 创企再获数千万融资:玩家应推动在边缘 AI 芯片上跑算法...
  7. 你想进BAT吗?告诉你一个秘密,面试成功率能提高到99%!
  8. 如何用 JavaScript+Canvas 开发一款超级烧脑小游戏?
  9. Python 揭秘斐波那契定律,如何帮助码农分析股票?| 技术头条
  10. GitHub 遭黑客攻击勒索;苹果夸大 iPhone 电池续航时间;全球第二大暗网被摧毁 | 极客头条...