嗨,我在使用lodash进行聚合,但是我一直停留在一个地方,我以字符串而不是float的形式获取值,因此将其连接起来而不是求和。
下面是尝试的方法。
var data = [{extendedPrice: "5151.059", month: "January"},
{extendedPrice: "8921.0336", month: "March"},
{extendedPrice: "2036.9865", month: "April"}];
var sumValue = _.sumBy(data,extendedPrice);
上面的结果
预期结果:
任何帮助将非常感激。
最佳答案
由于值是字符串,因此+
表示串联,而不是加法。您可以为_.sumBy
函数提供回调:
_.sumBy(data, item => Number(item.extendedPrice));
工作演示:
var data = [{extendedPrice: "5151.059", month: "January"},
{extendedPrice: "8921.0336", month: "March"},
{extendedPrice: "2036.9865", month: "April"}];
var sumValue = _.sumBy(data, item => Number(item.extendedPrice));
console.log(sumValue);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.min.js"></script>