数组中元素的数据类型一般是相同的(any[] 类型的数组可以不同),如果存储的元素数据类型不同,则需要使用元组。
元组与数组的不同在于存储数据的类型,元组可以存储不同类型的数据,并且可以明确定义每个位置的元素类型,any 则无法明确定义每个索引位置的类型
元组的创建
创建元组的语法格式如下:
let tuple_name = [value1,value2,value3,…value n]
同时声明与初始化
声明一个元组并初始化示例:
let mytuple = [10,"Runoob"];
先声明后初始化
let mytuple = [];
mytuple[0] = 120
mytuple[1] = 234
元组的应用
元组的访问
元组中元素使用索引来访问,第一个元素的索引值为 0,第二个为 1,以此类推第 n 个为 n-1,语法格式如下:
tuple_name[index]
以下实例定义了元组,包含了数字和字符串两种类型的元素,并通过索引访问:
let mytuple = [10,"Runoob"]; // 创建元组
console.log(mytuple[0])//10
console.log(mytuple[1])//Runoob
元组方法
元组类似数组,因此也可以使用部分数组的方法
- push() 向元组最后面添加元素
- pop() 从元组中移除最后一个元素,并返回移除的元素。
- tuple.length 返回元组的元素个数
- tuple[index] = newValue 直接赋值,修改更新元组
let mytuple = [10,"Hello","World","typeScript"];
//添加前元素个数:4
console.log("添加前元素个数:"+mytuple.length)
mytuple.push(12) // 添加到元组中
//添加后元素个数:5
console.log("添加后元素个数:"+mytuple.length)
//删除前元素个数:5
console.log("删除前元素个数:"+mytuple.length)
// 12 元素从元组中删除
console.log(mytuple.pop()+" 元素从元组中删除")
//删除后元素个数:4
console.log("删除后元素个数:"+mytuple.length)
//元组的第一个元素为:10
console.log("元组的第一个元素为:" + mytuple[0])
mytuple[0] = 121//更新元组元素
//更新后的第一个元组元素:121
console.log("更新后的第一个元组元素:"+ mytuple[0])
元组的解构
可以把元组元素赋值给变量,如下所示:
let a =[10,"Runoob"]
let [b,c] = a
console.log( b )//10
console.log( c )//Runoob