Typescript : 遍历Array的方法:for, forEach, every等

Posted 善未易明

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Typescript : 遍历Array的方法:for, forEach, every等相关的知识,希望对你有一定的参考价值。

方法一,for…of 
这个貌似是最常用的方法,angular 2中html语法绑定也是要的这种语法。

let someArray = [1, "string", false];

for (let entry of someArray) {
    console.log(entry); // 1, "string", false
}

 

 for…in 
官方文档上强调了for…in和for…of的区别:

let list = [4, 5, 6];

for (let i in list) {
   console.log(i); // "0", "1", "2",
}

for (let i of list) {
   console.log(i); // "4", "5", "6"
}

 

方法三,forEach 
forEach其实是JavaScript的循环语法,TypeScript作为javascript的语法超集,当然默认也是支持的。

let list = [4, 5, 6];
list.forEach((val, idx, array) => {
    // val: 当前值
    // idx:当前index
    // array: Array
});

方法四,every和some 
every和some也都是javascript的循环语法,TypeScript作为JavaScript的语法超集,当然默认也是支持的。因为forEach在iteration中是无法返回的,所以可以使用every和some来取代forEach。

let list = [4, 5, 6];
list.every((val, idx, array) => {
    // val: 当前值
    // idx:当前index
    // array: Array
    return true; // Continues
    // Return false will quit the iteration
});

以上是关于Typescript : 遍历Array的方法:for, forEach, every等的主要内容,如果未能解决你的问题,请参考以下文章

Typescript数组函数遍历问题

TypeScript之Map的遍历

typescript TypeScript中的Array.prototype.flatMap方法。

Typescript Convert Object to Array - 因为 *ngFor 不支持对象的迭代

Typescript 对象扩展了 Array<BoxModel> 不能再调用内部方法

告诉 TypeScript 编译器 Array.prototype.filter 从数组中删除某些类型的方法?