datajs里面的数据请求问题
来源:5-10 首页.UI组件-UiCascading(下)
qq_修炼者_0
2017-12-18 12:30:58
AjaxRemoteGetData.getDistinctArea = function() {
console.log('远程数据获取','getDistinctArea');
var map = {};
var arr = ['医院地区'];
for(i=1,j=storage.hospital.length; i<j ; i++){
var _d = storage.hospital[i][0];
map[_d] =1;
}
for( k in map){
arr.push(k);
}
console.log('结果',arr);
return arr;
}
-d不是获取到的每个医院地区数据吗?那将他们设置为1是什么意思啊?
1回答
注意map为空对象,存储内容是键值对的形式。如:key:值,所以根据代码分析:storage.hospital[i][0]通过for循环从数据库中取到所有的地区,获取的值存放在map对象中,将地区名作为对象的成员属性名,但是还要有值,通过 map[_d] =1; 设置。在通过for( k in map){arr.push(k);}遍历map对象,k取到的值是map对象的所有成员属性名,并将其插入到arr数组中。