两种解析JSON数据的方法

从Vue-router源码中看到解析JSON数据的方法。之前自己也写过解析JSON数据的代码。测试看,效率在一个数量级上。

<html>
 
<head>
<style type="text/css">

</style>
</head>
 
<body>
   
 
<script>

var data = {
    header : {
        nameSpace : {
            name : {
                message: "msg content"
            }
        }
    }
}

function isDef(v) {return v !== undefined;}

function parseJson1(data){
    var i = data;
    if(isDef(i) && isDef(i = i.header) && isDef(i = i.nameSpace) && isDef(i = i.name) && isDef(i = i.message)){
        return i;
    }else{
        return "";
    }
}

function parseJson2(data){
    if(!data || !data.header || !data.header.nameSpace || !data.header.nameSpace.name || 
    !data.header.nameSpace.name.message){
        return "";
    }else{
        return data.header.nameSpace.name.message;
    }
}

alert(parseJson1(data));
alert(parseJson2(data));
</script>
 
</body>
</html>

从打印看都能取出message字段。

发布了180 篇原创文章 · 获赞 16 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/liubangbo/article/details/103723704