for循环目的:就是重复运行相同的代码
语法:
for(初始化变量;条件表达式;操作表达式){
循环体
}
初始化变量:就是使用var关键字声明变量,并进行赋值,作为整个循环的初始值
条件表达式:确定每一次循环时候能够执行,如果是true,就继续循环,否则退出循环
操作表达式:确定每一次循环是否能够执行,如果是true就继续循环,否则退出循环
var i=0在整个循环中只运行一次
条件表达式 循环体 操作表达式 三个之间的循环
在循环体结果大于条件表达式时才会跳出循环
/* for(var i = 1;i<=100;i++){
alert('亲爱的,我错了'+i);
} */
// var num = +prompt('请输入想道歉的次数')
// for(var i = 1;i<=num;i++){
// alert('亲爱的,我错了'+i);
// }
for(var i=1;i<=9;i++){
for(var j=1;j<=i;j++){
document.write(j+'x'+i+'='+j*i);
document.write(' ');
// document.write(' ');
}
document.write('<br>');
}
// for(var i=1;i<=9;i++){
// for(var j=1;j<=i;j++){
// console.log(j+'x'+i+'='+j*i);
// console.log('\t');
// }
// console.log('\n');
// }
var str = '' //定义一个变量来存储好我们写好的数据
for(var i = 1; i <= 9; i++){ //这一个循环是控制有多少层的,这里是一共有9层,可以打印出来9行
for(var j = 1; j <= i; j++){ //这一层是控制每一行的内容,通过比较可以知道,每一层的行数刚好和每一层的公式个数是一致的,所以这里就可以弄层一个j<=i就可以了
str = str + i + " x " + j +" = " + i * j +'\t';
}
str = str +"\n" ; //一行的数据输出完之后就要换行输出
}
console.log(str);
// var sum=0;
// for(var i=1;i<=100;i++){
// if(i%3==0){
// console.log(i);
// sum+=i;
// }
// }console.log(sum);
/* var sum=0;
for(var i=0;i<=100;i++){
sum+=i;
}
console.log('0-100之间的和为:'+sum); */
/* var sum=0,sum1=0;
for(var i=1;i<=100;i++){
if(i%2==1){
console.log(i);
sum+=1;
}else{
// console.log(i);
sum1+=1;
}
}
console.log('1-100之间的奇数为:'+sum);
console.log('1-100之间的偶数为:'+sum1); */
双重for循环:循环嵌套,一个for循环里面还可以在嵌套一个for循环,这样的语句就是双重for循环
语法:for(外循环的初始化;外循环的条件;外循环的表达式){
for(内循环的初始化;内循环的条件;内循环的表达式){
循环体(需要执行的代码)
}
}
注意点:1.两个循环体的初始化变量名不一样;
2.外层for循环循环一次,里层for循环循环一遍,直到里层for循环不满足条件,才会跳出里层循环,再次进行外循环
// var str='';
// for(var i=0;i<=5;i++){
// for(var j=0;j<=5;j++){
// console.log(str+i);
// console.log(str+j);
// }
// }
// for(var i=0;i<=5;i++){
// for(var j=0;j<=5;j++){
// document.write('*');
// }
// document.write('<br>');
// }
/* var str='';
for(var i=0;i<=5;i++){
for(var j=0;j<=5;j++){
str=str+'*';
}
str=str+'\n';
}
console.log(str); */
for(var i=1;i<=10;i++){
for(var j=10;j>=i;j--){
document.write('*')
}
document.write('<br>')
}
for(var i=9;i>=0;i--){
for(var j=1;j<=i;j++){
document.write(i+'x'+j+'='+i*j+'\t')
}
document.write('<br>')
}
while 当......的时候
语法:while(条件表达式){
循环体
}
特点1:先执行条件表达式,如果结果时true,则执行循环体内容;如果是false,则退出循环
while循环三要素:
变量的起始值
终止条件(如果没有终止条件就会死循环)
变量的变化量(变量自增)
// var num=2;
// while(num<10){
// document.write('宝贝,你真棒'+'<br>');
// num++;
// }
var msg = prompt('你爱我吗');
while(msg !=='我爱你'){
msg = prompt('你爱我吗')
}alert('我也爱你')
// while(1){
// var num=prompt('你爱我吗?');
// if(num=='不爱你'){
// alert('爱不爱我')
// }else if(num=='我爱你'){
// alert('我也爱你');
// break;
// }
// }
do-while
<script>
/* do...while
do{
循环体
}while(条件表达式)
特点:1.无论条件表达式是true还是false,最少会先执行一次循环体
2.再执行条件表达式,如果是true,继续执行循环体,如果是false,退出循环体
*/
var i=0;
do{
document.write('我要输出');
i++;
}while(i<=10);
</script>
continue和break
<script>
// continue关键字用于立即跳出本次循环,继续下一次的循环
// 吃5个苹果,第三个有虫子,扔掉第三个,继续吃第4、5个
// for (var i = 1; i <= 5; i++) {
// if (i == 3) {
// console.log(i)
// continue;
// }
// console.log('我吃了' + i)
// }
// break关键字是立即跳出整个循环
// 吃5个苹果,第三个有虫子,后面都不吃了
for (var i = 1; i <= 5; i++) {
if (i == 3) {
break;
}
console.log('我吃了' + i)
}
</script>