Js 怎么遍历json对象所有key及根据动态key获取值(根据k值获取相应的value值)

Js代码  
<script type="text/javascript">  
 getJson('age');  

function getJson(key){  
    var jsonObj={"name":"张三","age":"24","profession":"工程师"};  
    //1、使用eval方法      
    var eValue=eval('jsonObj.'+key);  
    alert(eValue);  
<script type="text/javascript">  
 getJson('age');  

function getJson(key){  
    var jsonObj={"name":"张三","age":"24","profession":"工程师"};  
    //1、使用eval方法      
    var eValue=eval('jsonObj.'+key);  
    alert(eValue);  
<span style="color:#ff0000">不过一定要注意 这里给getJson(key)传的参数的key值一定是</span>
"name"或
"age"或
"profession" 
getJson("name") "name") 


//2、遍历Json串获取其属性

for(var item in jsonObj){
if(item==key){ //item 表示Json串中的属性,如'name'
var jValue=jsonObj[item];//key所对应的value
alert(jValue);
}
}

 
<span style="color:#ff0000">不过一定要注意 这里给getJson(key)传的参数的key值一定是</span>
"name"或
"age"或
"profession" 
getJson("name") "name") 


//3、直接获取

alert(jsonObj[key]);
}

 
<span style="color:#ff0000">不过一定要注意 这里给getJson(key)传的参数的key值一定是</span>
"name"或
"age"或
"profession" 
getJson("name") "name") 


</script>

<span style="color:#333333">下面为自己写的小案例,可以借鉴一下</span>
 
<script>  // 1 通过eval('json.'+k);这种方法动态的遍历json  var getJson = function(k){  var json = {"a":1,"b":2,"c":3,"d":4,"e":5};  return eval('json.'+k);  };  console.log(getJson("a"));  // 2 遍历json获取其属性  var getJson1 = function(k){  var json = {"a":1,"b":2,"c":3,"d":4,"e":5};  for(var item in json){  if(item == k){  return json[item];  }  };  };  console.log(getJson1("a"));  // 3 直接获取 这是一种很有效的方法不错  var getJson2 = function(k){  var json = {"a":1,"b":2,"c":3,"d":4,"e":5};  return json[k];  };  console.log(getJson2("a"));


当然案例中的json都是从后台获取的,这里只是写了一个小案例

<span style="color:#333333">通过上边三种方法就可以取到json中key对应的值</span>
发布了130 篇原创文章 · 获赞 103 · 访问量 26万+

猜你喜欢

转载自blog.csdn.net/xiaolinlife/article/details/71054186