JavaScript基础-条件判断&循环

一、条件判断if () {...} else {...}

1、JavaScript使用if () { ... } else { ... }来进行条件判断。例如,根据年龄显示不同内容,可以用if语句实现如下:

var age =20;

if (age >=18) {                             //如果age >=18为true,则执行if语句块

    alert('adult');

} else {                                        //否则执行else语句块

    alert('teenager');

}

其中else语句是可选的。如果语句块只包含一条语句,那么可以省略{},但是有风险,建议还是加上


2、多行条件判断:如果还要更细致地判断条件,可以使用多个if...else...的组合:

varage =3;

if (age >=18)  {

    alert('adult');

} else if (age >=6)  {

    alert('teenager');

} else {

    alert('kid');

}


练习

小明身高1.75,体重80.5kg。请根据BMI公式(体重除以身高的平方)帮小明计算他的BMI指数,并根据BMI指数:

低于18.5:过轻

18.5-25:正常

25-28:过重

28-32:肥胖

高于32:严重肥胖

'use strict';

var height = parseFloat(prompt('请输入身高(m):'));

var weight = parseFloat(prompt('请输入体重(kg):'));

var bmi = weight/(height**2);

if (bmi <=18.5) {

    alert('过轻');

} else if (bmi<=25) {

    alert('正常');

} else if (bmi<=28) {

    alert('过重');

} else if (bmi<=32) {

    alert('肥胖');

} else {

    alert('严重肥胖');

}




二、循环&遍历

1、求和

var x=0;      //即和

var i;           //循环的数字

if (i=1;i<=100;i++) {

    x=x+i;

}

x;                 //5050

让我们来分析一下for循环的控制条件:

i=1 这是初始条件,将变量i置为1;

i<=10000 这是判断条件,满足时就继续循环,不满足就退出循环;

i++ 这是每次循环后的递增条件,由于每次循环后变量i都会加1,因此它终将在若干次循环后不满足判断条件i<=10000而退出循环。


2、遍历

var arr = ['Apple', 'Google', 'Microsoft'];

var i, x;

for (i=0; i

    x=arr[i];

    console.log(x);

}


3、for循环的3个条件都是可以省略的,如果没有退出循环的判断条件,就必须使用break语句退出循环,否则就是死循环:

var x =0;

for(;;) {                                                                  //将无限循环下去

if(x >100) {

    break;                                                                  //通过if判断来退出循环 

     } 

 x ++;

}


4、for循环的一个变体是for ... in循环,它可以把一个对象的所有属性依次循环出来:

var o = {

    name:'Jack',

    age:20,

    city:'Beijing'

};

for(var key in o ) {

    console.log(key);                      // 'name', 'age', 'city'

}


5、由于Array也是对象,而它的每个元素的索引被视为对象的属性,因此,for ... in循环可以直接循环出Array的索引,结果为string,而非Number

var a = ['A','B','C'];

for(var i in a) {

    console.log(i);                    // '0', '1', '2'

    console.log(a[i]);                // 'A', 'B', 'C'

}


6、while循环只有一个判断条件,条件满足,就不断循环,条件不满足时则退出循环。比如我们要计算100以内所有奇数之和,可以用while循环实现:

var x=0;

var n=99;

while (n>0) {

    x=x+n;

    n=n-2;

}

x;   //2500


你可能感兴趣的:(JavaScript基础-条件判断&循环)