javascript - 如何获取json数据
巴扎黑
巴扎黑 2017-04-11 12:10:03
[JavaScript讨论组]

有这样一组数据

JSON数据如:{"options":{/"text/":/"王家湾/",/"value/":/"9/",/"text/":/"李家湾/",/"valu
e/":/"10/",/"text/":/"邵家湾/",/"value/":/"13/"},"option":{/"text/":/"王家湾/",/"value/":/"9/",/"text/":/"李家湾/",/"valu
e/":/"10/",/"text/":/"邵家湾/",/"value/":/"13/"},"opts":{/"text/":/"王家湾/",/"value/":/"9/",/"text/":/"李家湾/",/"valu
e/":/"10/",/"text/":/"邵家湾/",/"value/":/"13/"}}

我的需求就是获取第二级对象的值;请问怎么获取

巴扎黑
巴扎黑

全部回复(4)
ringa_lee

如果你的JSON是字符串的话,在JavaScript中你需要把它转换成一个Object对象,一般JSON.parse(jsonStr)可以将JSON字符串转换成Object对象;

例如:

var jsonData = "{/"options/":{/"id/":1,/"name/":/"zhangsan/"},/"other/":/"lisi/"}"

var obj = JSON.parse(jsonData);

// 当将普通的JSON字符串转换成Object对象后,就可以使用 **.** 属性名来获取值。

// 获取options:{id,name}数据
var options = obj.options; // 或者ojb["options"];

//  获取id数据
var id = options.id;    // 或者直接obj.options.id获取id的值
var name = options.id    

// 获取其它的数据也是相同的原理
迷茫

用JQuery吧,$.get()或者$.getJSON()

怪我咯

不知道你的格式中有转义是贴代码的问题还是本来就转义的。如果后台传过来就是有转义,先用replace替换一下

var data = JSON.parse(data.replace('/',''));
Object.keys(data).map(function(key){
  return data[key]['value]
})//得到的这个数组就是所有value值的集合
大家讲道理

拿到的是字符串 转成JSON格式 JSON.parse(str) 或者 eval('(' + str + ')') 然后就可以拿到了

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号