如图所示,返回的是这样的数据,我应该怎么遍历取key和value
ajax取数据成功后,如果取到的数据是一个对象,需要看到对象究竟是什么时可以这样做:
这样去看[object object]是什么样的。
var temp = "";
for(var i in result){//用javascript的for/in循环遍历对象的属性
temp += i+":"+result[i]+"\n";
}
alert(temp);
你这个遍历很难,只能来一个一个取,要不然,你后端就不要这么封装;
你后台返回的是个数组data[0].2014
如果返回数据为data,直接遍历,通过下标获取,data[0]["2014"]
返回map方法上加上 @ResponseBody 转化为json格式。前台遍历
控制台写的 不要在意换行
var arrydata=[];
var objdata={};objdata[2014]="22";objdata[2015]="833";objdata[2017]="1851";arrydata.push(objdata);
for(var i=0,len=arrydata.length;i<len;i++){ var temp=arrydata[i]; for(var key in temp){console.log("key:"+key+"-value:"+temp[key]);}}
$.ajax({
type : "POST",
url : "",
dataType : "json",
success : function(data) {
var Data=data;
for(var key in Data) {
alert("键:" + key + ",值 :"+ Data[key].2014);
}
}
});
for in 进行遍历
let temp = [{2014:'22',2015:'833'}];
let obj = temp[0];
for(let key in obj){
console.log(key,obj[key]);
// 2014,22
// 2015,833
}
直接从后台的返回对象中获取,利用如res[i]的方式进行获取。