JavaScript循环结构
1.js的switch语法:
适用于对应的case值数量不多的情况下,//n代表与下面的case进行比较,值相等则输出对应case,反之则执行default语句
switch(n)
{
case 1:
执行代码块 1
break;
case 2:
执行代码块 2
break;
default:
与 case 1 和 case 2 不同时执行的代码
}
2.while语句
while (条件){
需要执行的代码
}
例如:
a=1;
i=1;
while(i<3){
a=a+1;
i++;
}
console.log(a)
//输出的值将为a=3
3. for循环
语法:
for (语句 1; 语句 2; 语句 3)
{
被执行的代码块
}
代码:
for(var a=1;a<=100;a++){
console.log(“a :” +a);
}
4.循环的小题目
4.1猴子摘桃问题
猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃前一天剩下的一半零一个。
到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘多少个桃子?
代码:
var sum=1;
var i=1;
while(i<10){
sum=(sum+1)*2;
i++;
}
console.log("第一天摘的桃子总数为 : " +sum+"个");
4.2 纸张折叠问题
一张纸的厚度大约是0.1mm,对折后,再对折….折叠多少次之后,高度(厚度)会超过珠穆朗玛峰的高度. 8848m.
代码解析:
//注意换算一下单位后再算!
var i=0; //i表示次数
var a=0.01;
while(a<=884800){
a=a*2;
i++;
}
console.log("需要折叠的次数为 :" +i);
4.3 操场上100多人排队,三人一组多1人,四人一组多2人,五人一组多3人,共多少人?
//分析:
101 102 103 104 ….199 ?
我们需要将101 102 …这些数字使用题干中的条件来依次判断;
代码:
var i=101;
while(i<=199 ){
if (i%3==1 &&i%4==2 && i%5==3){
console.log("i:" +i);
}
i++;
}
其他小知识
*只有单独的 i++,表示为普通的加法;
var i=1;
console.log(i++); 这个i先引用后加1 所以输出1;
console.log(i++);这个i会继承上面的加1变2 ,在引用所以输出2;
*涉及表达式的 i=i++或i++>4 等才会涉及先引用后递增的概念;