zoukankan      html  css  js  c++  java
  • js数据存贮之数组与json

    1 数组:var arr=new array()或者是var arr=[ ];其中arr是对象  可以定义var a=[],或者var b=[] 都可以

    数组对象为[13,25,65,89]  如果我们要取出89这个数,那么 arr[3]就是89

    数组是用下标来表示的,下标是从0开始;

    假如我们有一个数组var a=[66,66,66,66],此时数组从a[0]到a[3],如果我们想添加一个数66,在不知道前面数组数量的情况下 假设我们写a[5]=66  则会显示a=[66,66,66,66,undined,66]

    要想加在后面 我们可以用a.push(66)  就会变为a=[66,66,66,66,66,]

    求和:var arr=[66,66,66,66,]

    Var shu=0;
    For(a=0,a<=3,a++){
    Shu=shu+arr[a]
    }

    但是当数组数量特别多的情况下 我们不知道数量 没法计算循环次数,此时用到arr.length  这是是数组中的数量 并不是下标  所有数量-1才是下标

    数组里面可以套数组 称为二维数组 例:

    Var arr=[669,69,[25,23,56],89]  这就是二维数组   

    我们要是想取值23     a[2][1] 就是取出来23    

    练习题:给定一个数组 求它的最大值、平均值、求和  数组为[45,85,256,82,68,25,4752,21,62,542,51]

    var shua=0;
                var shub=0;
                var sum=0;
                var c=0;//定义数组数量
                var d=0;//定义平均值
                //将数组存入
                var arr=[45,85,256,82,68,25,4752,21,62,542,51];
                for (a=0;a<arr.length;a++) {
                    //将数组中的数赋值给shua
                    shua=arr[a];
                    //记录循环次数
                    c++;
                    //如果shua大于shub,则将shua的值给shub,从而保证    shub是最大值
                    if(shua>shub){
                        shub=shua;
                    }
                    //求和
                    sum+=shua;
                    }
                //计算平均值
                d=sum/c;
                document.write("最大值为"+shub);
                document.write("<br />");
                document.write("求和为"+sum);
                document.write("<br />");
                document.write("平均值为"+d);    

    2  json

    json的两个重要属性为 key与值

    基本格式为var a={key:值,key:值,key:值}  取出值的时候a[“key”]必须要加引号,key值用字符串形式:“key”

    在json中用到一个循环遍历循环

    var a ={
            "li" : 1,
            "liu" : 2,
            "zhang" : 3,
            "wang" : 4,
            "5" : 5,
            "6" : 6
        };
    for(var b in a){
            alert(a[b]);
            console.log(a[b]);
        }

    这样就能将json中的数组都显示出来

    json也可以套json 称为二维json 三维json

    var a={
            "yi":1,
            "er":2,
            "san":3,
            "si":{
                "yi":11,
                "er":22,
                "san":33,
                "wu":{
                    "yi":111,
                    "er":222,
                    "san":333
                }
            }
        }
        console.log(a["si"]["san"]);

    这样输出的就是33

    练习题:有三个年级
    一年级:3个班
    二年级:3个班
    三年级:3个班

    选择对应年级显示有那几个班,再选择某个班,显示有哪几个学生
    把二年二班的同学打印出来

    var nianji={
        "yinianji":"一年级",
        "ernianji":"二年级",
        "sannianji":"三年级"
    }
    var banji={
        "一年级":{
            yiban:"一年级一班",
            erban:"一年级二班",
            sanban:"一年级三班"
        },
        "二年级":{
            yiban:"二年级一班",
            erban:"二年级二班",
            sanban:"二年级三班"
        },
        "三年级":{
            yiban:"三年级一班",
            erban:"三年级二班",
            sanban:"三年级三班"
        }
    }
    var xuesheng={
        "一年级一班":{
            xiaoming:"小明",
            xiaohong:"小红"
        },
        "一年级二班":{
            xiaoming:"小明",
            xiaohong:"小红"
        },
        "一年级三班":{
            xiaoming:"小明",
            xiaohong:"小红"
        },
        "二年级一班":{
            xiaoming:"小明",
            xiaohong:"小红"
        },
        "二年级二班":{
            xiaoming:"小明",
            xiaohong:"小红"
        },
        "二年级三班":{
            xiaoming:"小明",
            xiaohong:"小红"
        },
        "三年级一班":{
            xiaoming:"小明",
            xiaohong:"小红"
        },
        "三年级二班":{
            xiaoming:"小明",
            xiaohong:"小红"
        },
        "三年级三班":{
            xiaoming:"小明",
            xiaohong:"小红"
        }
    }
    console.log(xuesheng[banji[nianji["ernianji"]]["erban"]])
  • 相关阅读:
    理解vertical-align
    理解css行高(line-height)
    react 生命周期函数
    react Diff 算法
    React中的虚拟DOM
    无限重启:windows更新之后,在输入密码页面无限重启进入不了系统
    [转]github 上传project代码
    【转】HTTP响应状态码参考簿
    TweenMax—ScrambleText插件 实现类似电脑破译密码的特效
    既然CPU一次只能执行一个线程,那多线程存在的意义是什么?
  • 原文地址:https://www.cnblogs.com/zzq123/p/9817329.html
Copyright © 2011-2022 走看看