数组

在ts中,定义数组类型语法: let 变量名 : 数据类型[] = [值1,值2,值3]

let arr1 : number[] = [1,2,3,4]
console.log(arr1);
// 输出 [1,2,3,4]

此外数字类型的定义还可以使用泛型,关于泛型的内容,下面只是做一个数组类型的演示,详细的请看后续关于泛型的篇章。

泛型定义数组的写法:let 变量名 : Array<数据类型> = [值1,值2,值3]

let arr2 : Array<number> = [5,6,7,8]
console.log(arr2);
// 输出 [5,6,7,8]

定义数组类型需要注意的是,数组定义后,数组内的数据类型必须和定义数组的时候的类型是一致的,否则会有错误提示,某些情况下不会编译通过。


元组

在ts中,元组类型就是在定义数组的时候,类型和数据的个数一开始就已经限定好了。

元组类型的语法 :let arr : [ string ,number,boolean ] = [ '东方不败' , 100 , true ]

let arr3 : [string,number,boolean] = ['东方不败',100.123,true]
console.log(arr3);
// 输出 ['东方不败',100.123,true]

使用元组类型时,需要注意的是,元组类型在使用的时候,数据的类型的位置和数据的个数,需要和 在定义元组的时候的数据类型和位置相一致,不一致则会报错提示,如下:

let arr3 : [string,number,boolean] = ['东方不败',true,123]  // 报错
// 类型顺序为 string, number, boolean 此处传的值为 string boolean number

可以对元组内的值进行更改,比如:

let arr3 : [string,number,boolean] = ['东方不败',100.123,true]
console.log(arr3[1].toFixed(2)); // 保留两位小数
// 打印 100.12

案例源码:https://gitee.com/wang_fan_w/ts-seminar

如果觉得这篇文章对你有帮助,欢迎点亮star

【TS】数组和元组的更多相关文章

  1. 小甲鱼:Python学习笔记002_数组_元组_字符串

    创建普通数组 >>> member=["山东黄金","九阳股份"] >>> member ['山东黄金', '九阳股份'] ...

  2. C#学习笔记二 (资源托管,泛型,数组和元组,运算符和类型强制转换)

     托管和非托管资源 1.托管资源是指GC管理的内存空间,非托管资源是指文件句柄,网络连接,数据库连接等. 2.方法中临时申请的变量,被存放在栈中.栈存储非对象成员的值数据.例如在方法中有B b=new ...

  3. TypeScript学习——数组、元组、接口(2)

    数组 数组类型注解 const numberArr: (number | string)[] = [1, '2', 3]; //既可以是number 也可以是string const stringAr ...

  4. Scala学习——数组/映射/元组

    [<快学Scala>笔记] 数组 / 映射 / 元组 一.数组 1.定长数组 声明数组的两种形式: 声明指定长度的数组 val 数组名= new Array[类型](数组长度) 提供数组初 ...

  5. C#数组和元组

    声明数组 int[] myArray; 初始化数组 myArray = new int[4]; 数组是引用类型当初始化完毕后,将在托管堆上分配内存空间,其结构图如下

  6. Scala详解---------数组、元组、映射

    一.数组 1.定长数组 声明数组的两种形式: 声明指定长度的数组 val 数组名= new Array[类型](数组长度) 提供数组初始值的数组,无需new关键字 Scala声明数组时,需要带有Arr ...

  7. Scala具体解释---------数组、元组、映射

    一.数组 1.定长数组 声明数组的两种形式: 声明指定长度的数组 val 数组名= new Array[类型](数组长度) 提供数组初始值的数组,无需newkeyword Scala声明数组时.须要带 ...

  8. Python 数组[],元组(),字典{}的异同

    序列 Python有6中内建的序列,在这里我们重点讨论两种,数组和元组.所有序列都可以做某些特定的操作,大致上常用的是:加,乘,索引,分片以及检查某个元素是否属于序列的成员. Python还提供一些内 ...

  9. typescript 01 认识ts和ts的类型

    看ITYING ts专辑(前三集总结) TypeScript 是 Javascript 的超级,遵循最新的 ES6.Es5 规范.TypeScript 扩展了 JavaScript 的语法.TypeS ...

  10. TypeScript——02——TS基本数据类型介绍和使用

    一,TS的数据类型 ES6的数据类型: 6种基本数据类型 Boolean Number String Symbol undefined null 3种引用类型 Array Function Objec ...

随机推荐

  1. Springcoud-netflix 笔记

    SpringCloud_Netflix 微服务一代(Netflix)学习前提: JAVASE. 数据库(MySQL). 前端(HTML+CSS+JavaScript||JQuery.Bootstrap ...

  2. 第1章-Spring的模块与应用场景

    目录 一.Spring模块 1. 核心模块 2. AOP模块 3. 消息模块 4. 数据访问模块 5. Web模块 6. 测试模块 二.集成功能 1. 目标原则 2. 支持组件 三.应用场景 1. 典 ...

  3. 数电第六周周结_by_yc

    时序逻辑电路的设计要点:   ①只有时钟信号和复位信号可以放在敏感列表里:   ②使用非阻塞赋值,即使用"<=";   ③无需对所有分支进行描述,对于未描述的分支,变量将保持 ...

  4. 在微信上搭建ChatGpt机器人

    在微信上搭建ChatGpt机器人 项目地址:https://gitee.com/shtml/wechatbot?_from=gitee_search 准备 一个服务器:Windos,Centos,Ub ...

  5. React报错之Too many re-renders

    总览 产生"Too many re-renders. React limits the number of renders to prevent an infinite loop" ...

  6. vscode问题:由于找不到ffmpag.dll文件,无法继续执行代码

    工作中发现VS code打不开了,显示如下:  解决方法: 一.打开Microsoft VS Code 文件夹,发现一部分文件被打包进了一个叫"_"的文件夹(第一个)  二.把该文 ...

  7. uniapp(vue)实现点击左侧菜单,右侧显示对应的内容

    <template> <view class="container"> <view class="fication-search" ...

  8. 02- 快速入门MybatisPlus

    创建表 现有一张 User 表,其表结构如下: id name age email 1 Jone 18 test1@baomidou.com 2 Jack 20 test2@baomidou.com ...

  9. NOIP-2022游寄

    NOIP-2022游寄 Day 1 虽然没有上次去南京CSP-S那么激动,但还是有点小开心的,毕竟能水掉两天课.Phigros重度沉迷患者,推了4个小时的分.坐右前方那哥们好卷,在车上写图论-- JS ...

  10. nginx: [emerg] "auth_basic" directive is duplicate

    错误信息 nginx: [emerg] "auth_basic" directive is duplicate in phpmyadmin.conf:14 nginx: confi ...