最近在搞 json 数据传输,直接用的 javascript 对数据进行操作。json数据为:

var json ={ "global":"200", "camera":[{"key2":"F5.6","key3":"35mm" }], "jam":[ {"Red":"100"}, {"Yellow":"300"}, {"Green":"500"}] };

      现在我想要的效果是 根据“global”、“camera”、“jam”这些 key 值来遍历里面的内容,而且这些 key 事先是不定的,根据传递过来的参数确定 key 值。
     js 函数为 :
funciton test(id){  // id 为传进来的key值  

  for(var item in json[id])       {  for(var key in json[id][item])             {               alert("key="+ item +"value="+ json[id][item][key] );             }       } }

   这样就可以得到最外层 key 值为 id 的object中的 key 值和对应的 value 了。

      起初看 json 取数据时,看似很简单,只要知道key值便可以,比如 json.global、json.camera.key2、json.jam.Red ,但这些是通过“.”这个操作符实现的,必须确定key 值,而且这个 key 值无法通过变量来改变(或许可以,但是我还不知道)。
      其实后来我发现,用“.” 这个操作符操作,是把数据当做是一个 object 来操作了,而如果通过“[]”来操作,便把数据当做是list,所以每个“{ }”便是一个元素。
      global的第一个元素 json["global"][0]为“200”,再用[]取值得到“2”、“0”、“0”;
      json["camera"][0]为{"key2":F5.6,"key3":35mm},取到的值分别为json["camera"][0]["key2"]=F5.6和json["camera"][0]["key3"]=35mm;
      而jam取到的为 json["jam"][0]["Red"]=100, json["jam"][1]["Yellow"]=300, json["jam"][2]["Green"]=500。

转载于:https://www.cnblogs.com/chenzhengjun/archive/2011/08/21/2148747.html

js操作json数据的一些感受相关推荐

  1. JS操作JSON数据交换

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 采用完全独立于语言的文本格式,易于人阅读和编写.同时也易于机器解析和生成. JSON采用完全独立于语言的 ...

  2. js之操作JSON数据

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意 ...

  3. js html 处理json数据,JS中Json数据的处理和解析JSON数据的方法详解

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...

  4. Jquery重新学习之五[操作JSON数据]

    Jquery操作Json格式的数据在我们平时的项目中也经常运用:最近看Jquery权威指南中就有一章节是对这方面的整理总结:最后通过一个Asp.net结合一般处理程序ashx的实例,基本上能满足项目中 ...

  5. JSON基础 JS操作JSON总结

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意 ...

  6. JS解析json数据并将json字符串转化为数组的实现方法

    json数据在ajax实现异步交互时起到了很重要的作用,他可以返回请求的数据,然后利用客户端的js进行解析,这一点体现出js的强大,本文介绍JS解析json数据并将json字符串转化为数组的实现方法, ...

  7. JS解析json数据(json字符串和数组之间相互转换)

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...

  8. js操作excel数据转json数据

    excel----->json数据 依赖: 这里引入网上的依赖,本地以来自己去下载. //jquery的js库<script src="http://code.jquery.co ...

  9. JS操作JSON总结

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意 ...

最新文章

  1. python语言用途-Python在每个行业的用处
  2. FTP匿名登录或弱口令漏洞及服务加固
  3. LR模型常见问题小议
  4. Scala if...else案例
  5. mark:apache建站permission问题
  6. 漫画:Bitmap算法 整合版
  7. 终于有人把内卷和囚徒困境讲明白了
  8. Docker Swarm 初步认识 及 集群搭建
  9. python 条形图 负值_Python处理JSON数据并生成条形图
  10. ssm游文化推广系统答辩PPT模板
  11. OpenProj打开不了或者提示”Failed to load Java VM Library”的错误的解决方案
  12. Paypal绑定WorldFirst美元账户免费转账教程!
  13. 小白跑WRF第五天,安装WPS和静态地理数据
  14. linux下启动Nacos报错解决:which: no javac in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
  15. linux终端下如何分屏,ubuntu terminal 终端分屏
  16. 调用百度ocr接口识别表格
  17. shell 脚本实战 三
  18. HTTP常用请求头与请求体实例
  19. openCV-python 入门笔记
  20. 痞子衡嵌入式:再测i.MXRT1060,1170上的普通GPIO与高速GPIO极限翻转频率

热门文章

  1. java的et5_Javascript与java相同的3des加密(使用etdesede/CBC/PKCS5Padding )
  2. java nio有哪些功能_如何真正理解java中的NIO?
  3. mysql 优化表_mysql里sql优化和表结构优化
  4. mysql mysqld.sock_MySQL笔记-最简单的方法来解决找不到mysqld.sock文件的问题
  5. c55x汇编语言,TMS320C55x汇编语言编程A.ppt
  6. 【算法系列之一】二叉树最小深度
  7. leetcode111. 二叉树的最小深度
  8. C语言:---gdb多线程调试
  9. 在CentOS6.2下安装DNS服务软件Bind并快速配置简单实例
  10. 别瞎忙活:创业公司的6条时间管理策略