zoukankan      html  css  js  c++  java
  • json和数组的区别

    我们都知道,json和数组一样,都可以存数据,但是下面我们来总结一下json和数组的区别。

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>json</title>
    <script type="text/javascript">
    var json={a:12,b:5,c:7};
    var arr=[12,5,7];
    alert(json.a);
    alert(arr[0]);
    </script>
    </head>
    <body>
    
    </body>
    </html>

    我们知道任何.都可以用[]代替,于是

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>json</title>
    <script type="text/javascript">
    var json={a:12,b:5,c:7};
    var arr=[12,5,7];
    alert(json['a']);
    alert(arr[0]);
    </script>
    </head>
    <body>
    
    </body>
    </html>

    于是,得出结论,json与数组的第一个区别,json的下标与数组的下标不一样,json的下标是字符串,数组的下标是数字。

    同时,我们也知道,数组,有length;但是我们求json的数组的时候,发现,undefined,即,json没有length属性,那如何求json的length;

    我们知道数组的循环有两种方法(1)

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>json</title>
    <script type="text/javascript">
    var json={a:12,b:5,c:7};
    var arr=[12,5,7];
    for(i=0;i<arr.length;i++){
        alert(''+i+'个东西'+arr[i]);
    }
    
    </script>
    </head>
    <body>
    
    </body>
    </html>

    但这种方法,因为json没有length,所以只能是放弃了

    数组的另外一种方法循环(2)

    for in循环

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>json</title>
    <script type="text/javascript">
    var json={a:12,b:5,c:7};
    var arr=[12,5,7];
    for(var i in arr){
        alert(''+i+'个东西:'+arr[i]);
    }
    </script>
    </head>
    <body>
    
    </body>
    </html>

    可见,这里并没有出现length,那这种方法我们使用到json里试试。

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>json</title>
    <script type="text/javascript">
    var json={a:12,b:5,c:7};
    var arr=[12,5,7];
    for(var i in json){
        alert(''+i+'个东西:'+json[i]);
    }
    </script>
    </head>
    <body>
    
    </body>
    </html>

    建议:

    关于循环

    数组:for 0-len

    json: for in

  • 相关阅读:
    注解-案例
    注解(Annotation)
    适合新手看的超详细CentOS Linux 7 安装Tomcat8过程
    CentOS Linux 7 提示 lsof: 未找到命令
    解决MySql报错:1130
    Spring Boot 创建自定义的properties文件
    spring boot 使用Schedule创建轻量级定时任务
    4.Java数组模块
    3.IDEA开发工具
    2.java基础语法
  • 原文地址:https://www.cnblogs.com/liangdong/p/10238969.html
Copyright © 2011-2022 走看看