使用fs.readfile()我读取一个文件并将该文件的数据放在一个对象中.但是我怎样才能获得具有最高价值的行?
[ { id: 'AA', naam: 'de eerste', waarde: 100 }, { id: 'BB', naam: 'de tweede', waarde: 120 }, { id: 'CC', naam: 'de derde', waarde: 130 }, { id: 'DD', naam: 'de laatste', waarde: 90 }, { id: 'CC', naam: 'de derde', waarde: 150 }, { id: 'CC', naam: 'de derde', waarde: 120 } ]
我的意思是对象行的值为150.
使用Array#reduce
方法通过自定义函数缩减为单个对象.
var data = [ { id: 'AA', naam: 'de eerste', waarde: 100 }, { id: 'BB', naam: 'de tweede', waarde: 120 }, { id: 'CC', naam: 'de derde', waarde: 130 }, { id: 'DD', naam: 'de laatste', waarde: 90 }, { id: 'CC', naam: 'de derde', waarde: 150 }, { id: 'CC', naam: 'de derde', waarde: 120 } ]
console.log(
data.reduce(function(prev, next) {
// compare object properties and return object with highest value
return prev.waarde >= next.waarde ? prev : next;
})
)