前端使用 for in 进行对象的遍历

1.遍历对象:使用for in

//对象
var test = {
    name : "zs",
    age: "18"
}

1.遍历属性名

for(key in test) {
	console.log(key);
}

2.遍历属性值

for (key in test) {
	console.log(test[key]);
}

注:遍历时,只能通过 test[value] 来获取相应属性的值,而不能使用 test.value
结果:
在这里插入图片描述

2.获取对象中所有的属性名和值

//对象
var test = {
    name : "zs",
    age: "18"
}

1.获取对象名:

Object.keys(test)    // ["name", "age"]

2.获取对象值:

Object.values(test)   // ["zs", "18"]

结果:
在这里插入图片描述

3.替换对象中的 key 值

根据 area,将 info 中的区域代码换成区域名称

let area = {
  "330100": "杭州市",
  "330200": "宁波市",
  "330300": "温州市"
};

let info = {
	"330100": {"color": "red", "num": 383},
    "330200":  {"color": "red", "num": 115},
    "330300":  {"color": "yellow", "num": 995}
};

let obj = {};  //定义一个新对象
for(key in area){
	for(key2 in info){
		if(key == key2) {
			obj[area[key]] = info[key2];
		}
	}
}


//结果
console.log(obj);
obj = {
	杭州市: {color: "red", num: 383},
	宁波市: {color: "red", num: 115},
	温州市: {color: "yellow", num: 995}
}

4.将对象转换数组

let area = {
  "330100": "杭州市",
  "330200": "宁波市",
  "330300": "温州市"
};

let areaList = [];  //定义一个新数组
for(key in area) {
	areaList.push({[key]: area[key]});
}


//结果
console.log(areaList);
areaList = [
	{330100: "杭州市"}
	{330200: "宁波市"}
	{330300: "温州市"}
];

猜你喜欢

转载自blog.csdn.net/wytraining/article/details/103566309