typescript笔记(四)
一、循环:for循环、for...in...循环、for…of 、forEach、every 和 some 循环、while 循环、do...while 循环、break 语句、continue 语句、无限循环就是一直在运行不会停止的循环;
for 和 while 循环都可以创建无限循环。
1)、for循环
语法格式:
for ( init; condition; increment ){
statement(s);
}
例如:
var num : number = 5;
var i : number;
var fa = 1;
for(i = num; i>=1; i--){
fa*=i;
}
console.log(fa);
2)、for...in用于一组值的集合或列表进行迭代输出;遍历下标值。
语法:
for (var val in list) {
//语句
}
例如:
var j : any ;
var n : any = "a b c"
for(j in n){
console.log(n[j]); //值
}
3)、for…of 、forEach、every 和 some 循环
for...of:迭代可迭代的对象,允许遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构等;遍历的是value值;
例如:
let s = [1,"string",false];
for(let e of s){
console.log(e);
}
4)、forEach循环在 iteration 中是无法返回的
例:
let list = [4,5,6];
list.forEach((a,b,c)=>{
// a:当前值;b:下标;c:数组
console.log(a,b,c)
})
5)、every 和 some 有返回值,用来取代foreach
let li = [6,5,4];
li.every((a,i,arr)=>{
// a:当前值 i:当前下标 arr:数组
console.log(a,i,arr);
return true;
})
6)、while 循环
语法:
while(condition)
{
statement(s);
}
例如:
var num : number = 9;
var fa : number = 2;
while(num >= 2){
fa = fa * num ;
num --;
}
console.log("9的阶乘:"+fa)
7)、do...while 循环是在循环的尾部检查它的条件。
语法:
do
{
statement(s);
}while( condition );
例子:
var nn = 10;
do {
console.log(nn); //10
nn--;
} while (n >= 0);