<!DOCTYPE HTML>
<html>
<head>
<title>test1</title>
</head>
<body>
<script>
var arr={
"name":"zhansan",
"age":23,
"address":{
"city":"beijing",
"gas":{
"gasSheet":"???????",
"H_adjust":1
},
"time":{
"duration":31
}
},
"units":{"title":"function"}
}
function show(obj){
var tmp={};
for(var i in obj){
if(obj.hasOwnProperty(i)){
if(obj[i]=="object"){
tmp[i]=show(obj[i]);
}
else{
tmp[i]=obj[i]
}
}
}
return tmp;
}
var result=show(arr);
console.log(result);
</script>
</body>
</html>
主要采用递归的思想。注意其中的obj.hasOwnProperty(i),为了防止原型链中拥有此属性,但本对象中没有此属性。
此种思想可以用于多种场景