可以将定义的变量放入数组调用中

Possible to put defined variable in array call

本文关键字:数组 调用 变量 定义      更新时间:2023-09-26

我有一个快速问题。这是我的代码:

d3.csv("test1.csv", function(data) {

            var year = "state";

        .domain([
                d3.min(data, function(d) { return d.value; }), 
                d3.max(data, function(d) { return d.value; })
            ]);

我在这里查询csv文件。d3.min和max使用"return d.value;"返回名为"value"的列。

在这个调用中,是否可以在代码上方定义我的年份变量,而不是从列名中硬编码单词"value"?

我想改为使用变量,因为这样我就可以通过一次更改来更改它。

我试过返回d.year,但这显然是在寻找一个名为year的列,而不是我的变量year。

谢谢。

使用括号语法:

var year = "state";
// ...
.domain([
  d3.min(data, function(d) { return d[ year ]; }), 
  d3.max(data, function(d) { return d[ year ]; })
]);

d.year指的是属性year,因为它只是一个标识符。

如果您想引用变量year,从而使用其内容作为标识符,则必须使用括号语法。