从几个月开始,我正在从书Eloquent javascript学习javascript。
问题的基础是文件祖先。这是一个问题: 计算并输出每个世纪祖先数据集中人们的平均年龄。一个人被分配到一个世纪,将他们的死亡年份除以一百,并将其四舍五入,如Math.ceil(person.died / 100)。
我试图稍微解决它,这给了一个人的世纪(即他死于哪个世纪)。现在如何找到一个人的平均年龄。
这是我的代码:
function average(array) {
function plus(a, b) { return a + b; }
return array.reduce(plus) / array.length;}
var byCentuary = {};
ancestry.forEach(function(person) {
this[person.name] = Math.ceil(person.died/100);
console.log(this[person.name]);
},byCentuary)
for (var event in ancestry) {
var a = ancestry[event];
for (var prop in a)
if(prop === "died") {
cen = a[prop]; }
}
var ageP = ancestry.filter(function(a){
return this[a.died] - this[a.born]
}, yearByName).filter(Number);
console.log(ageP);
for(var i = 16 ; i <= 21 ; i++) {
ancestry.forEach(function(per) {
if(this[per.name] === i){
console.log(ageP.reduce(function (e,t){return e+t}) / ageP.length);
}
},byCentuary)
}