概念

  • 数组是一个变量,用来存放一组数据

  • 数组的大小可以动态调整,没有长度限制(js特有)

  • 可以存放任意类型的数据

    原理

    声明一个变量就是在内存空间中划出一块合适的空间,声明一个数组就是在内存中划出一串连续的空间。

    创建数组

    var [arrayname] = new Array();

    创建数组的方式

    1.直接使用Array()

    var nums = new Array(); //创建一个空数组
    var nums = new Array(5);    //创建一个长度为5的数组
    var nums = new Array(12,44,2,55,66);    //创建一个包含5个元素的数组

    2.使用数组字面值

    var names = []; //创建一个空数组
    var names = ["apple","orange","peach","banana"];    //创建一个字符串数组
    var names = ["Tom","Maria",23,32,true,12.3,54.43];  //创建一个包含字符串,整形,数字,布尔,浮点等类型的字符串

    注意

    数组中的项,如果没有赋值,将默认为undefined

二重循环也就是嵌套循环

简单理解:外层循环执行一次,内层循环执行一轮。类似地球自转和公转,地球绕太阳转就是外层循环,自转是内层循环,地球自转了三百六十五天后,正好内层循环执行一遍,于是外层循环就执行了一次。

理解

  • 一个循环体内又包含另一个完整的循环结构。

  • 外层循环变化一次,内层循环要变化一遍。

  • 各种循环可以相互嵌套

    例子

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    // 提示输入班级人数,然后循环获取每个学员的考试成绩,并输出前三名

    var num = Number(prompt("请输入班级人数"));
    var first = 0,second = 0,thrid = 0;
    for (var i =1 ;i<=num;i++) {
    var score = Number(prompt("请输入第"+i+"位学员的成绩"));
    if (score>first) { //如果输入的分数大于第一名分数
    thrid = second; //将第二名的分数给第三名
    second = first; //将第一名的分数给第二名
    first = score; //将输入的最高成绩给第一名
    } else if (score>second) { //如果输入的成绩大于第二名小于第一名
    thrid=second; //将第二名的成绩给第三名
    second = score; //将输入的成绩给第二名
    } else if (score>thrid){ //如果输入的成绩大于第三名小于第二名
    thrid = score; //将输入的成绩给第三名
    }
    }
    console.log("第一名:"+first);
    console.log("第二名:"+second);
    console.log("第三名:"+thrid);

温馨提示代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<center>温馨提示
<br>
<script type="text/javascript">
var now=(new Date()).getHours();
if(now>0&&now<=6){
document.write("午夜了,快睡觉去,熬夜对身体不好哦");
}else if(now>6&&now<=11){
document.write("早上好,开始一天美好的生活吧");
}else if(now>11&&now<=14){
document.write("中午好,到了午饭时间了吧,一个人也要好好吃饭哦");
}else if(now>14&&now<=18){
document.write("下午好,是不是有点累了,可以适当休息一下哦");
}else{
document.write("晚上好,吃完晚饭记得要运动下哦");
}
</script>
</center>