从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字段。