求城市平均年龄

it2026-08-10  6

// 求城市的平均年龄 const people = [{ name: "som", age: 35, city: "beijing ", }, { name: "tom", age: 25, city: "chengdu ", }, { name: "frank", age: 45, city: "shanghai ", }, { name: "mary", age: 35, city: "chengdu ", }, { name: "frank", age: 45, city: "shanghai ", }, ];

方法1

//方法1 function FC(people) { console.log(people, "people"); let result = {}; let city = []; people.map((item) => { city.push(item.city); }); city = city.filter((item, index, array) => { return array.indexOf(item) === index; }); for (let j = 0; j < city.length; j++) { let len = 0; result[city[j]] = 0; people.map((item) => { if (item.city == city[j]) { result[city[j]] += item.age; len++; } }); if (len > 1) { result[city[j]] = result[city[j]] / len; } } console.log(city, "city"); return result; } console.log(FC(people), "result"); //{“chengdu ”: 30,“beijing ”:35,“shanghai ”:45}

方法2

方法2 function Fc(people) { let result = {}; let len = {}; people.map((item, index) => { let keys = Object.keys(item); console.log(keys); let values = Object.values(item); console.log(values); if (!result[values[2]]) { result[values[2]] = 0; len[values[2]] = 0; console.log(result); console.log(len[values[2]]); } result[values[2]] += values[1]; len[values[2]]++; }); for (let i in result) { result[i] = result[i] / len[i]; } return result; } console.log(Fc(people));

方法3

function Fc(people) { let result = {}; let len = {}; people.map((item) => { if (!result[item["city"]]) { result[item["city"]] = 0; len[item["city"]] = 0; } result[item["city"]] += item.age; len[item["city"]]++; }); console.log(result); console.log(len); for (let i in result) { result[i] = result[i] / len[i]; } return result; } console.log(Fc(people));
最新回复(0)