js通过变量获得json数据

原创 2015年11月20日 18:26:05

// 一个JSON数组

{

 "s81664841290841200000":[

                   {"number":0,"maxnumber":2}

                             ],

 "s516652423491597000":[

                            {"number":1,"maxnumber":4}

                    ],

 "s97187674431254320000":[

                               {"number":2,"maxnumber":3}

                             ]

}

//取值一、

      s516652423491597000[0].number // 结果:1

      s516652423491597000[0].maxnumber    //结果:4

 

上面是JSON最常用的取值方法,现在做一个假设,如果上面的JSON我们用变量保存起来,格式如下:

var obj ={

 "s81664841290841200000":[

                    {"number":0,"maxnumber":2}

                             ],

 "s516652423491597000":[

                            {"number":1,"maxnumber":4}

                    ],

 "s97187674431254320000":[

                               {"number":2,"maxnumber":3}

                             ]

}

 

//取值二、

   obj.s516652423491597000[0].number // 结果:1

      obj.s516652423491597000[0].maxnumber    //结果:4

 

上面我们同样可以获取到数据。假设现在以s开头的key是自动生成的并且我们现在的key 我们需要使用变量去获取里面的值怎么获取了?在获取值需要先明白一个概念:

1、JSON是一个文本格式

2、 上面我们定义了一个obj的变量储存了JSON,是使用字面量表示法定义了一个对象,并赋值了一个属性,这个过程结果就跟SON没有任何关系了

// 取值三、

      var keys = "s516652423491597000";   //声明变量

      //错误使用变量用法

      obj.keys[0].number   //结果:undefined

      obj.keys[0].maxnumber      //结果:undefined

    上面的为什么错了?其实是我们定义的obj 内部并没有 keys这个属性,所以访问不到里面的任何数据,那如何将这个keys作为obj的键[key],并输出obj对象中的值呢?代码如下:

      //正确使用变量方法

      obj[keys][0].number //结果:1

      obj[keys][0].maxnumber    //结构4

 

取值三中我们使用了[ 变量 ]代替KEY 获取到了结果,此时如果是二级中的key也是需要使用变量来获取那有该怎么办了。

//取值四、

    var keys = "s516652423491597000";            //声明变量

      var keysTown ="number";      //二级key变量

      var keysTowm ="maxnumber"; //二级key变量

      obj[keys][0][keysTown]        //结果1

      obj[keys][0][keysTowm ] //结构:4

 

取值四中我们同样也是使用了[ 变量 ] 代替了二级的KEY 获取到了结果。使用这种方法就算是N级也可以也可以拿到内部的值诺。

 

总结:上面的问题也是我在使用json的时候出现了的,分享出来也许能帮助到让大家,也让大家少走弯路并且明白什么是JSON 。上面的代码如果有错误或者有更好的方法获取,希望您能在留言区留言不吝赐教。



版权声明:本文为博主原创文章,未经博主允许不得转载。

原生js,jquery通过ajax获得后台json数据动态新增页面元素

一、原生js通过ajax获取json数据 原生js创建ajax对象比较复杂,因为IE浏览器对ajax对象的创建于其他浏览器不同,下面创建ajax对象的方法就兼容了不同的浏览器 function ...
  • Dorry_L
  • Dorry_L
  • 2015年09月25日 20:37
  • 6259

JS 将变量 转化为字符串的方法, 适用于所有类型,数组, JSON对象,函数和基本类型等

在JS中, 要将JSON对象,数组或其他类型数据转化为字符串, 可以使用JSON.stringify,但由于此方法只支持部分浏览器, 搜搜其他的类库代码又太多,不如花点时间自己写个。    ...
  • aq1987
  • aq1987
  • 2014年05月06日 14:10
  • 294

echarts全国省市地图js、json数据

  • 2017年12月12日 14:08
  • 4.69MB
  • 下载

ajax接收json数据到js解析

解决js解析后台返回的list和对象遍历问题

echarts全国及各省地图js json数据

  • 2017年11月08日 16:29
  • 1.81MB
  • 下载

js中如何定义json数据

1、将json格式的数据转换为jsonvar lineHead="["; lineHead+="{'mainType':'party','loginName':'G010000000312502','...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:js通过变量获得json数据
举报原因:
原因补充:

(最多只允许输入30个字)