D3.js实现示例中的匿名函数和数据绑定机制说明

nuypyhwy  于 2023-05-18  发布在  其他
关注(0)|答案(1)|浏览(238)

我的问题是关于***D3.js***可视化JavaScript库。
我有一个对象数组,每个对象包含相同的属性,但具有不同的数值。现在,我想在这个数组的对象中找到特定属性的最大值。
下面是JavaScript代码,它可以做到这一点:

d3.max(parsedCSV, function (d) {
    return d["AverageGrade"]
})

这段代码查找存储在parsedCSV数组中的所有学生中AverageGrade属性的最大值。它按我的需要工作。
根据d3.max()引用,该函数获取数组并返回其最大值。我不明白的是匿名函数调用的部分:

function (d) { return d["AverageGrade"] }

您能否详细说明它究竟是如何工作的,数据是如何绑定的,这种方法的技术/专业名称是什么?

ewm0tg9j

ewm0tg9j1#

这被称为callback function,它基本上提供了一个函数的引用,该函数在数组的每次迭代时被调用,并作为第一个参数传递。这是JavaScript中非常常见的模式,许多库都基于此工作。例如,我假设您使用d3.csv来获取解析的csv,并提供了一个匿名函数作为第二个参数。这和这里的想法完全一样。如果你使用d3,你会在任何地方遇到它(例如使用输入-更新-删除模式或使用事件)。
仅供参考,在d3的情况下,您可以使用第二个参数(通常标记为i),它保存集合中项的索引。

相关问题