开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第20天,点击查看活动详情
循环
我们想输出一个0-9的值,用for循环就可以简单的列举出来
for (var i = 0; i < 10; i++) {
console.log(i)
}
//写法
//for() {
// 执行语句
//}
//步骤
//1、声明变量 i = 0
//2、 if (i < 10) {
// console.log(i)
//}
//3、 i++
//4、继续执行 if(i < 10) {不满足条件时结束}
//5、i++
我们改变一下写法,当我们这样写到时候输出一样
var i = 0;
for(; i < 10;) {
console.log(i);
i++
}
我们发现这种写法和while的很像,这样就可以将for循环引申到while上面,不过也有一个缺点,当while循环一直是满足条件的话,就会导致成死循环,for也是
while(i < 10) {
console.log(i);
i++
}
//死循环
var i = 0;
while(1) {
console.log(i);
i++
};
for(; 1;) {
console.log(i);
i++
}
我们不想用中断语句去中断循环的时候,也可以采用语句去执行
var i = 1;
for(; i;) {
console.log(i);
i++;
//当i变成11的时候,去停止循环
if( i == 11) {
//这样也可以中断,这个相当于break
i = 0;
}
}
接下来写一些案例
从0开始做加法,加到什么时候总和是小于100的
for (var i = 0; i < 100; i++) {
sum += i;
if (sum >= 100) {
break;
}
console.log(i, sum)
}
100以内的数跳过可以被7整除或个位数是7的数,利用continue跳出当前循环
for (var i = 0; i <= 100; i++) {
if (i % 7 == 0 || i % 10 == 7) {
continue;
}
}
可以被4,5,6整除的数
for (var i = 0; i <= 100; i++) {
if(i % 4 == 0 || i % 5 == 0 || i % 6 == 0) {
console.log(i)
}
}
打印 0-100的数,()只能有一句,不能写比较,{} 不能出现i++ i--
var i = 100;
for (; i--;) {
console.log(i)
}
10的N次方
var n = 5;
var num = 1;
for(var i = 0; i < n; i++) {
num *= 10
}
n的阶乘
var n = 5;
var num = 1;
for(var i = 1; i <= n; i++) {
num *= i;
}