在for循环中,提供了专门的位置用来放三个表达式:
1.初始化表达式
2.条件表达式
3.更新表达式
for 循环的语法:
for (初始化表达式;条件表达式;更新表达式) {
语句........
}
for 循环的执行流程:
①.执行初始化表达式,初始化变量(初始化表达式只会执行一次)
②.执行条件表达式,判断是否执行循环
如果为true,则执行循环③
如果为false,终止循环
④.执行更新表达式,更新表达式执行完毕继续重复②
例:for( var i = 0 ; i < 10 ; i ++ ){
alert ( i ) ;
}
for循环中的三个部分都可以省略,也可以写在外部
例:var i = 0;
for( ; i < 10 ; ){
alert ( i++ ) ;
}
如果在for循环中不写任何的表达式,只写两个 ;
此时的循环是一个死循环,会一直执行下去
例:for( ; ; ){
alert( 1 ) ;
}
练习:打印1-100之间所有奇数的和
//创建一个变量,用来保存奇数之和
var sum = 0;
//打印1-100之间的数
for ( var i = 1 ; i < 101 ; i ++){
//判断 i 是否是奇数
//不能被2整除的数就是奇数
if ( i % 2 != 0 ) {
//如果 i 除以2有余数则证明 i 是奇数
//console.log( i ) ;
sum=sum + i ;
}
}
document.write ( sum ) ;
/*
水仙花数
水仙花数是指一个3位数,每个位上的数字是3次幂之和等于它本身
例如:1^3 + 5^3 + 3^3 = 153 ,打印所有水仙花数
*/
var g,s,b;
for( var i=100 ; i <= 999 ; i++){
b=parseInt( i / 100 ) ;
s=parseInt( i % 100 / 10 ) ;
g=parseInt( i % 100 % 10 ) ;
if ( b * b * b + s * s * s + g * g * g == i ){
document.write( i + "<br/>" ) ;
}
}
//打印1-100之间的所有7的倍数的个数及总和
var cs=0,sum=0;
for( var i = 1 ; i <= 100 ; i++ ){
if( i % 7 == 0 ){
cs ++ ;
sum += i ;
}
}
alert("一共有"+ cs +"个7的倍数"+"
"+"倍数总和是:"+sum);