我被困在为什么我的Javascript findMaxObjectValue函数将无法正常工作的原因。这是我想出的:

function findMaxObjectValue(obj) {
    return Object.keys(obj).reduce(function(a, b) {
        return (obj.a > obj.b) ? a : b;
    }, obj[a]);
}


当我运行这个:

findMaxObjectValue([{Alex: 1}, {Katie: 2}, {Nora: 3}, {Dana: 4}])


当我希望使用'3'时,它返回'4' ...感谢所有帮助!

最佳答案

这是因为要减少键而不是值。它正在比较Alex,Katie,Nora和Dana。诺拉在字典上排在最后,这就是答案。

如果要按值1、2、3、4进行排序,请使用values()方法,而不要使用keys()方法。

07-28 11:25