Js 怎么遍历json对象所有key及根据动态key获取值

              对于json对像,怎么遍历json对象的所有key,在使用json对象时,如果无法知道key,怎么通过key变量来获取值?请参阅下面的关键代码:

<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
	<script type="text/javascript">
		var smsTypeDesc = {"4":"回访短信","3":"邮件短信","aa":"测试短信"};
		function EnumaKey(){
			for(var key in smsTypeDesc){
				alert(key);
			}
		}
		function GetVal(){
			var key = prompt("请输入要查询的key","4");
                        if("undefined"==typeof(smsTypeDesc)) return;
			if("undefined"==typeof(smsTypeDesc[key])){
				alert("输入的key:"+key+", 在json对象中不存在!");
				return;
			}	
			alert("您输入的key是:"+key + ",该key所对应的值是:"+smsTypeDesc[key]);
		}
		function GetValByKey(){
			alert(smsTypeDesc.aa);
		}
	</script>
</head>
<body>
	Json对象:<br/>
	<pre>
		var smsTypeDesc = {"4":"回访短信","3":"邮件短信","aa":"测试短信"};
	</pre>
	<input type="button" οnclick="EnumaKey();" value="遍历smsTypeDesc所有key"/>
	<input type="button" οnclick="GetVal();" value="获取smsTypeDesc动态指定key的值"/>
	<input type="button" οnclick="GetValByKey();" value="获取smsTypeDesc key aa 所对应的值"/>
</body>
</html>
         通过上面的代码,可以看出很简单。根据动态key,主要是通过[] 访问,对于知道key的通过.访问

         对于json格式字符串的解析,也可以参考以前的blog:js怎么解析json格式字符串

微信扫码,关注公众号,获取更多文章

 最新动态,请访问:51RTB


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值