模拟数据库

模拟数据库

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;

老师请问一下在模拟数据库中,以下几个的 原理,谢谢老师

var map = {};
var arr = ['医院地区'];

map[_d] =1;

for( k in map){
arr.push(k);

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕糖 2017-07-09 19:26:24

你好, 遍历对象时,取的是属性名 ,这里k为成员属性名,1位成员属性值。祝学习愉快!


  • 提问者 董建州 #1
    老师这些是涉及到Ajax的知识吗,还是json和Ajax都有
    2017-07-09 19:42:05
怎么都被占用了呢 2017-07-08 18:01:53

定义的map为空对象,用来接收从数据库中查询出来的数据(这里是指所有的医院地区),通过for循环从数据库中取到所有的地区,执行map[_d] =1;将地区名作为对象的成员属性名,存放入对象中。在通过for( k in map){arr.push(k);}遍历map对象,k取到的值是map对象的所有成员属性名,并将其插入到arr数组中。

  • 提问者 董建州 #1
    老师,map[_d] =1 的1是什么意思呢,还有for( k in map)的k不应该是map的成员索引吗,为什么arr.push(k);这样就把map的成员存到arr中了呢,请老师解释一下,谢谢老师
    2017-07-08 18:40:06
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师