ts(typescript)讲解for , for...in..., for...of..., while, every, some, map, filter
for
一般用于已知循环次数
var num:number = 5; var i:number; var factorial = 1; for(i = num;i>=1;i--) { factorial *= i; } console.log(factorial)
for...in...
一般用于循环对象
let keyValue:string; let objectList:object = { name: '小白狼', age:'27', gender: '女' } for(let keyValue in objectList){ console.log(keyValue + ':' + objectList[keyValue]) }
打印结果
name:小白狼
age:27
gender:女
for...of...
允许你遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构等
let someArray = [1, "string", false]; for (let entry of someArray) { console.log(entry); // 1, "string", false }
while
一般用于未知循环次数
var num = 5; var factorial = 1; while (num >= 1) { factorial = factorial * num; num--; } console.log("5 的阶乘为:" + factorial);
every
有一个false就返回false
var arr1 :Array<number>= [1, 2, 3, 4, 5, 6]; console.log( arr1.every( function( item, index, array ){ console.log(item); return item > 3; })); 打印结果 1 false
some
有一个true ,则返回true
var arr1 :Array<number>= [1, 2, 3, 4, 5, 6]; console.log( arr1.some( function( item, index, array ){ console.log(item); return item > 3; })); 打印结果 1 2 3 4 true
map
var arr = [ 1, 2, 3, 4, 5, 6 ]; console.log( arr.map( function( item, index, array ){ console.log(item); return item > 3; })); 打印出来的结果是:1,2,3,4,5,6 函数返回结果: [false, false, false, true, true, true]
filter
同样返回一个新的数组,但是返回的是符合条件的数组项,同样不会跳出循环
var arr = [ 1, 2, 3, 4, 5, 6 ]; console.log( arr.filter( function( item, index, array ){ console.log(item); return item > 3; })); 打印的结果为1,2,3,4,5,6 函数返回结果为[4,5,6]
浙公网安备 33010602011771号