Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.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_Jquery_D3.js_Parameters - Fatal编程技术网

javascript参数背后的概念是什么?

javascript参数背后的概念是什么?,javascript,jquery,d3.js,parameters,Javascript,Jquery,D3.js,Parameters,让我试着解释一下我奇怪的困惑 我正在努力学习。我看到很多函数都有一些奇怪的参数(至少在我看来,它们看起来很奇怪) d在这里做什么?为什么它没有用却被通过了 从哪里传递i(以及值) 同时,我也跟随并建立了一个。这也有一些奇怪的函数参数: .attr("cy", function(d) { return y(d.y) }) 从哪里传递d(以及值) d在这里做什么?为什么它没有用却被通过了 style函数将使用一组特定的参数调用回调函数。回调恰好不需要这些参数中的第一个,这一事实不会改

让我试着解释一下我奇怪的困惑

我正在努力学习。我看到很多函数都有一些奇怪的参数(至少在我看来,它们看起来很奇怪)

  • d
    在这里做什么?为什么它没有用却被通过了
  • 从哪里传递
    i
    (以及
同时,我也跟随并建立了一个。这也有一些奇怪的函数参数:


.attr("cy", function(d) {
  return y(d.y)
})
  • 从哪里传递
    d
    (以及
d
在这里做什么?为什么它没有用却被通过了

style
函数将使用一组特定的参数调用回调函数。回调恰好不需要这些参数中的第一个,这一事实不会改变
style
调用它的方式。因此回调函数必须接受参数,但忽略它

从何处传递
i
(以及值)

样式
功能。它调用回调函数,因此它决定回调函数接收的参数值

下面是一个函数接受和调用回调的示例,这可能有助于澄清问题。见评论:

//下面是接受回调的函数,就像
//d3的'style'接受回调。
函数doSomething(回调){
//使用两个参数调用回调函数,
//随机字母和随机数:
var letter=String.fromCharCode(65+Math.floor(26*Math.random());
var number=Math.floor(Math.random()*100);
回拨(字母、数字);
}
//现在我们调用这个函数,给它一个回调
//它利用了它的两个论点:
剂量测量(函数(l,n){
log(“第一次回调:字母为:”+l);
log(“第一次回调:编号:”+n);
});
//现在我们调用这个函数,给它一个回调
//仅使用第二个参数:
剂量测量(函数(l,n){
log(“第二次回调:编号:”+n);
});
d
在这里做什么?为什么它没有用却被通过了

style
函数将使用一组特定的参数调用回调函数。回调恰好不需要这些参数中的第一个,这一事实不会改变
style
调用它的方式。因此回调函数必须接受参数,但忽略它

从何处传递
i
(以及值)

样式
功能。它调用回调函数,因此它决定回调函数接收的参数值

下面是一个函数接受和调用回调的示例,这可能有助于澄清问题。见评论:

//下面是接受回调的函数,就像
//d3的'style'接受回调。
函数doSomething(回调){
//使用两个参数调用回调函数,
//随机字母和随机数:
var letter=String.fromCharCode(65+Math.floor(26*Math.random());
var number=Math.floor(Math.random()*100);
回拨(字母、数字);
}
//现在我们调用这个函数,给它一个回调
//它利用了它的两个论点:
剂量测量(函数(l,n){
log(“第一次回调:字母为:”+l);
log(“第一次回调:编号:”+n);
});
//现在我们调用这个函数,给它一个回调
//仅使用第二个参数:
剂量测量(函数(l,n){
log(“第二次回调:编号:”+n);

});这些是传递给作为引用提供的处理程序函数(也称为回调)的参数

下面是一个工作示例:

function main(a、b、callbackFn){
callbackFn(a*b);
}
主(2、3、功能(结果){
console.log(结果);/=6

});这些是传递给作为引用提供的处理程序函数(也称为回调)的参数

下面是一个工作示例:

function main(a、b、callbackFn){
callbackFn(a*b);
}
主(2、3、功能(结果){
console.log(结果);/=6

});
在D3.js中,选择中的匿名函数按顺序传递三个值,传统上称为
d
i
p
(下面是关于这些字母的更多信息):

  • 第一个值,
    d
    ,是基准(数据为单数)
  • 第二个是该数据的索引,
    i
  • 第三个是D34.x中的节点和D33.x中的父数据索引
  • 这就是它的工作原理,单击“运行代码片段”:

    var testData=[43,2,57,42,17];
    var测试=d3。选择全部(“.test”)
    .data(testData)
    .输入()
    .附加(“p”);
    test.attr(“foo”,函数(d,i){console.log(“数据:+JSON.stringify(d),”\nIndex:+JSON.stringify(i))
    })

    在D3.js中,选择中的匿名函数按顺序传递三个值,传统上称为
    d
    i
    p
    (下面是关于这些字母的更多信息):

  • 第一个值,
    d
    ,是基准(数据为单数)
  • 第二个是该数据的索引,
    i
  • 第三个是D34.x中的节点和D33.x中的父数据索引
  • 这就是它的工作原理,单击“运行代码片段”:

    var testData=[43,2,57,42,17];
    var测试=d3。选择全部(“.test”)
    .data(testData)
    .输入()
    .附加(“p”);
    test.attr(“foo”,函数(d,i){console.log(“数据:+JSON.stringify(d),”\nIndex:+JSON.stringify(i))
    })

    d
    是基准,
    i
    是该基准的索引。由于
    i
    是第二个参数,因此即使不使用它,也必须传递
    d
    。在D3中,第一个参数始终为基准,第二个参数始终为基准的索引,第三个参数为
    
    .attr("cy", function(d) {
      return y(d.y)
    })
    
    
    .delay(function(d, i) {
      return i * del(Math.random())
    })