您的位置:首页 > Web前端 > JavaScript

遍历json对象的所有key,在使用json对象时,如果无法知道key,怎么通过key变量来获取值

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

[html] view
plain copy

<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" onclick="EnumaKey();" value="遍历smsTypeDesc所有key"/>  

    <input type="button" onclick="GetVal();" value="获取smsTypeDesc动态指定key的值"/>  

    <input type="button" onclick="GetValByKey();" value="获取smsTypeDesc key aa 所对应的值"/>  

</body>  

</html>  

         通过上面的代码,可以看出很简单。根据动态key,主要是通过[] 访问,对于知道key的通过.访问

         对于json格式字符串的解析,也可以参考以前的blog:js怎么解析json格式字符串
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  JavaScript Json
相关文章推荐