Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
谁定义了这个javascript片段中的参数?_Javascript_Svg - Fatal编程技术网

谁定义了这个javascript片段中的参数?

谁定义了这个javascript片段中的参数?,javascript,svg,Javascript,Svg,我刚开始使用javascript,在理解下面这段(svg)代码时遇到了一个问题,这段代码使用javascript定义x坐标和半径。我理解数据是如何绑定的,等等。但我的问题是-对于包含两个参数的函数:d和I,其中定义函数的第一个参数是数据集,第二个是圆的计数器,即0代表第一个圆,1代表第二个圆,依此类推 var dataset = [ 5, 10, 15, 20, 25 ]; var circles = svg.selectAll("circle") .data(

我刚开始使用javascript,在理解下面这段(svg)代码时遇到了一个问题,这段代码使用javascript定义x坐标和半径。我理解数据是如何绑定的,等等。但我的问题是-对于包含两个参数的函数:d和I,其中定义函数的第一个参数是数据集,第二个是圆的计数器,即0代表第一个圆,1代表第二个圆,依此类推

var dataset = [ 5, 10, 15, 20, 25 ];
var circles = svg.selectAll("circle")
                 .data(dataset)
                 .enter()
                 .append("circle");
circles.attr("cx", function(d, i) {
            return (i * 50) + 25;
        })
       .attr("cy", h/2)
       .attr("r", function(d) {
            return d;
       });
谢谢。

这里是d3,所以


如果值是常量,则所有元素都被赋予相同的属性值;否则,若value是一个函数,那个么该函数将针对每个所选元素(按顺序)进行求值,传递当前数据d和当前索引i,并将此上下文作为当前DOM元素。

大概在
.attr
函数中。谢谢,这为我的问题提供了一个清晰的解释。但下一次,我只是想知道javascript中是否有这样一个概念:参数被传递给函数而不带任何值,并且它们的值在函数体中被改变/给定一个值。因此,最初传递的参数更像占位符(只是重申一下,这是关于纯javascript而不是d3的)。我问这个是因为我想我听到过类似的事情,我真的想不起来了。一次又一次,我不断地碰到一些函数,我不知道这些函数的值是在哪里给出的。如果您还有其他问题,请使用“提问”按钮提问。