JS数组

数组:使用单独的变量名来存储一系列的值。

  数组元素:数组里面的每一项

  数组长度:数组里面元素的个数

       表示方法:数组名.length

  数组下标(索引):数组元素在数组的位置,从0开始

  如:var a = [12,45,7]

  这个数组名为a 有三个元素,分别是12 45 7 ,45的位置是第1位。

  还可以定义var a = [5]  表示这个数组里有五个元素。

  二维数组:数组里面的元素是一维数组。 如 [[1,3],[1,8],[9,55]]

下面是一个一维数组的联系,用到了for循环给数组赋值,还有数组的方法

  indexOf() 若等于-1则这个元素在数组没有出现过,其他值则为它在元素中的位置。

  push() 将元素加到数组的最后一项

//彩票36选7不重复
//定义彩票36的数组
var attr = [],
    //定义选择7个的空数组
    option = [],
    //定义计数次数
    jishu = 0,
    //定义随机数变量
    num;
//使用循环给36数组赋值
for(var i = 1; i < 37; i ++){
    attr[i] = i;    
}
while(true){
    //随机取0-36的数赋值给num   作为数组下标
    num = parseInt(Math.random()*36);
    //当选中的7中没有和总数组重复的数时
    if(option.indexOf(attr[num]) == -1){
        //计数加一
        jishu ++;
        //并把这个不重复的数放进选7的数组最后
        option.push(attr[num]);
        //当计数次数为7时,结束循环。
        if(jishu == 7){
            break;
        }
    }
}
//输出选中的7项
alert(option);
彩票36选7

下面是一个二维数组的练习,定义两个空数组,用for循环给数组一赋值,每一个元素都是一个人的学号和三门课成绩。因此一个元素是一个数组。数组二用来装计算后的平均分等。

//一个班六个人,学号语文、数学、英语,接收成绩(不接受学号),输出学号成绩,总分、平均分,
//定义个人成绩的数组 包括学号 语文 数学 英语
var arr = [],
    //定义个人计算成绩的数组 包括 学号 总分 平均分
    newarr = [];
//循环输入六个人的学号 语文 数学 英语成绩
for(var i = 0; i < 3; i ++){
    var xh = prompt("请输入学号"),
        yw = parseInt(prompt("语文成绩")),
        sx = parseInt(prompt("数学成绩")),
        yy = parseInt(prompt("英语成绩"));
    //学号和成绩赋值给数组
    arr[i] =  [xh,yw,sx,yy]
}
//循环计算每个人的总分 平均分
for(var i = 0; i < arr.length; i ++){
    //学号
    var xh = arr[i][0],
        //总分
        zf = arr[i][1]+arr[i][2]+arr[i][3],
        //平均分
        pfj = zf/3;
    newarr = [xh,zf,pjf];
}
//控制台输出学号总分平均分
console.log(newarr);
输入分数计算平均分

  for-in 遍历

    for(var i in arr){

           arr[i];

    }

将数组内的元素全部走一遍。

注意事项:

  定义数据的时候注意他的数据类型,若为字符串定义为a = " ";  若为数字定义为a = 0; 若直接定义为a;下面的运算会出现问题。

posted @ 2018-03-25 22:54  ❉SSs  阅读(411)  评论(0编辑  收藏  举报