json 用变量取值问题

guoliang2121 2012-04-27 10:04:50
var AA = {
"a":{
"qwe":"111" ,
"er":"www"
},
"b":{
"qwwe":"qqq" ,
"err":"www"
}
};

AA.a.qwe 可以取到 值是 111 但是 a 和 qwe 都是变量,要如何取值呢?
...全文
388 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
.云哲. 2012-04-27
  • 打赏
  • 举报
回复
建议,传的数据的时候不要依赖服务器,用自己的规则。你想怎么写,你就这么获取这些数据。
三石-gary 2012-04-27
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 的回复:]

引用 12 楼 的回复:

如果上面不行。。。还是想看看你完整的代码。。


不想看了,楼主写代码完全是想当然,不会去考虑基本语法什么的。。
[/Quote]
是啊。。他写他的。。我们猜我们的。。这样的确很累。。哎。。
乌镇程序员 2012-04-27
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

如果上面不行。。。还是想看看你完整的代码。。
[/Quote]

不想看了,楼主写代码完全是想当然,不会去考虑基本语法什么的。。
三石-gary 2012-04-27
  • 打赏
  • 举报
回复
如果上面不行。。。还是想看看你完整的代码。。
三石-gary 2012-04-27
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 的回复:]

JScript code
function f(typeid,key) { //函数名
var AA = {
"a":{
"qwe":"111" ,
"er":"www"
},
"b":{
"qwwe":"qqq" ,
"err":"www"
}
};
alert(AA[typeid][key]); //你写的括号是全角的!!
}
f('a','er');
[/Quote]
这是可以的。。
guoliang2121 2012-04-27
  • 打赏
  • 举报
回复
alert("typeid:"+typeid+" "+"key:"+key);
弹出的是 typeid:a key:qwe
那俩个括号没问题
乌镇程序员 2012-04-27
  • 打赏
  • 举报
回复
function f(typeid,key) { //函数名
var AA = {
"a":{
"qwe":"111" ,
"er":"www"
},
"b":{
"qwwe":"qqq" ,
"err":"www"
}
};
alert(AA[typeid][key]); //你写的括号是全角的!!
}
f('a','er');
三石-gary 2012-04-27
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

function (typeid,key) {
var AA = {
"a":{
"qwe":"111" ,
"er":"www"
},
"b":{
"qwwe":"qqq" ,
"err":"www"
}
};
alert(AA[typeid][key]);
}
[/Quote]
第一眼看你alert 那的2个括号就不对。。
你要给这个函数传值并且传的id 和key在jason里都应该存在才能得到值。。
guoliang2121 2012-04-27
  • 打赏
  • 举报
回复
function (typeid,key) {
var AA = {
"a":{
"qwe":"111" ,
"er":"www"
},
"b":{
"qwwe":"qqq" ,
"err":"www"
}
};
alert(AA[typeid][key]);
}
三石-gary 2012-04-27
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
JScript code
var AA = {
"a":{
"qwe":"111" ,
"er":"www"
},
"b":{
"qwwe":"qqq" ,
"err":"www"
}
};

//是这意思吗?
var a = 'b';
var qwwe = 'err';

alert(AA[a][qwwe]); //www
[/Quote]
这个方法是可以取到的。。你把你的代码贴出来
三石-gary 2012-04-27
  • 打赏
  • 举报
回复
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
</head>
<body>

<script>
var AA = {
"a": {
"qwe": "111",
"er": "www"
},
"b": {
"qwwe": "qqq",
"err": "www"
}
};
var i = 'b';
var j = 'qwwe';
alert(AA[i][j]);
</script>
</body>
</html>
guoliang2121 2012-04-27
  • 打赏
  • 举报
回复
取到的是 alert(AA[a][qwwe]) 弹出的是undefined
guoliang2121 2012-04-27
  • 打赏
  • 举报
回复
还是取不到
乌镇程序员 2012-04-27
  • 打赏
  • 举报
回复
var AA = {
"a":{
"qwe":"111" ,
"er":"www"
},
"b":{
"qwwe":"qqq" ,
"err":"www"
}
};

//是这意思吗?
var a = 'b';
var qwwe = 'err';

alert(AA[a][qwwe]); //www
001007009 2012-04-27
  • 打赏
  • 举报
回复
AA[a][qwe]
1、PostMan接口参数化操作步骤; 2、环境变量设置步骤; 3、A接口返回值例如token赋值给B接口请求参数操作步骤; 图文并茂 1 接口参数化 第一步:点击右上角图标,打开环境配置页面,选择Globals,设置全局变量; 第二步:添加变量名称,设置对应的变量值,保存; 第三步:接口地址或者需要取值的参数value设置;注意需要取值的设置为{{变量名}},双大括号,即可取全局变量设置的值。 TIPS: 如果需要批量修改接口参数等,可导出后编辑,批量替换,再导入即可,注意需要修改接口地址以及下方的参数取值。 2 接口返回值存入环境变量 第一步:查看接口返回值; { "data": { "leaguerId": "161", "token": "eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxNjEiLCJjcmVhdGVkIjoxNTI5NTcyNTkzMTI5LCJleHAiOjE1Mjk1Nzk3OTN9.U6qmR-Qa9sJpwxShLOC8WLPBlhLxWWiQTv5bZtyOV0mdyCSHnFBb_p6T5PBY20m_0m2AmrQZGfrv6hvHCPAaow" }, "status": 200 } 第二步:在接口的TESTS页签中输入以下内容(视返回值情况修改): pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); // 把responseBody转为json字符串 var Jsondata = JSON.parse(responseBody); // 设置环境变量access-token,供后面的接口引用 pm.environment.set("access-token ", Jsondata.data.token ); 第三步:重新发送上一个接口的参数信息测试,执行后查看环境变量;如图,则表示环境变量的值已经正常存储; 3 参数化取其他接口的返回值 第一步:修改需要引用上述token值的接口参数取值,参数值value设置为{{access-token}}({{变量名}}),测试接口,正确返回即可;

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧