gpt4 book ai didi

javascript - d3 转换为对象数组中的数字

转载 作者:行者123 更新时间:2023-11-30 14:59:27 26 4
gpt4 key购买 nike

我有这样一个数据集:

var data = [{state: "CA", number: "3"},{}...];

我想使用这个获取数据集中的最大数量:

d3.max(data, function(d){ return d.number;})

但是我没有得到正确的答案。有关如何纠正此问题的任何建议?

最佳答案

现在您正在比较字符串,结果可能不是您所期望的。

例如,检查这个演示:

var data = [{
state: "CA",
number: "3"
}, {
state: "NY",
number: "5"
}, {
state: "PA",
number: "41"
}];

var max = d3.max(data, function(d) {
return d.number;
});

console.log("Max is: " + max)
<script src="https://d3js.org/d3.v4.min.js"></script>

您可能认为最大值是 41。但是,它返回 "5",这确实是“最高”字符串。

解决方案:将字符串转换为数字(此处使用一元加号运算符 +):

var data = [{
state: "CA",
number: "3"
}, {
state: "NY",
number: "5"
}, {
state: "PA",
number: "41"
}];

var max = d3.max(data, function(d) {
return +d.number;
// ^--- unary plus
});

console.log("Max is: " + max)
<script src="https://d3js.org/d3.v4.min.js"></script>

关于javascript - d3 转换为对象数组中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46760466/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com