TypeScript 数组

前言

        ts的数组几乎与js数组操作一致。本文主要讲一些需要关注的地方。

数组初始化

        初始化字符串数组

let character:string[]

        除了使用中括号 [] 的方法来声明数组,我们还可以使用数组泛型来定义数组

let numArr:Array<number> = [1, 2, 3, 4, 5];  

        至于什么是泛型,请看后面的推文。

        对象数组:

interface resObj {
    name:string,
    money: number
}
const arr: resObj[] = [{name:'艾丽娅',money:200}]

数组解构

解构是一种表达式,将数组或者对象中的数据赋予另一个变量。

let numArr:number[] = [1, 2, 3];
var[a, b, c] = numArr; 

结果得到a是1 b是2 c是3。JS的ES6也已经只吃了数组解构

var arr = [1,2,3]
var [a,b,c] = arr

多维数组怎么写

let arrNew: number[][] = [[0,1],[3,2]]

从函数返回数组

function show():string[] { 
    return new Array("郭靖", "黄蓉", "杨过", "小龙女") 
 } 

遍历数组

跟JS一样,该怎么遍历就怎么遍历。毕竟TS是JS的超集!

const rec = (children: string[]) =>
children.forEach(node => {
    console.log(node)
});

或者你想用for of也行

// show的定义在上面
var myNames = show();
for (var i in myNames) {
    console.log(myNames[i]);
}

特殊数组 ReadonlyArray<T>

ReadonlyArray<T> 类型,它与 Array<T> 相似,只是把所有可变方法去掉了,因此可以确保数组创建后再也不能被修改。

let a: number[] = [1, 2, 3, 4];
let ro: ReadonlyArray<number> = a;
ro[0] = 12; // error!
ro.push(5); // error!
ro.length = 100; // error!
a = ro; // error!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值