为了账号安全,请及时绑定邮箱和手机立即绑定

(函数(x,y){…})(a,b)是做什么的;在JavaScript中意味着什么?

(函数(x,y){…})(a,b)是做什么的;在JavaScript中意味着什么?

拉莫斯之舞 2019-10-21 10:57:11
我看到了这个功能:(function (x, y, data, lbl, dot) {    // Function body...})(x, y, data[i], labels[i], dot);这是什么?有功能吗?为什么要放置函数定义()?
查看完整描述

3 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

在javascript中,您可以拥有anonymous和self invoking函数。


function add(a, b)

{

   return a + b;

}

与...相同


var add = function (a, b) {

             return a + b;

          }

你称这些为


add(10, 20)

您可以定义函数并立即将其调用为


(

   function(a, b)

   {

      return a + b;

   }

)(10, 20);


   (

       function(a, b)

       {

          return a + b;

       }

    )

part定义一个函数,并在(10, 20)其后立即调用刚刚定义的函数,并以10和20作为参数。


由于该函数没有名称,因此无法在以后的代码中使用。


您问题中的代码可能被缩小了,并以类似的方式创建了一个函数并立即调用它。


查看完整回答
反对 回复 2019-10-21
?
潇湘沐

TA贡献1816条经验 获得超6个赞

function() {}是匿名函数的定义,并且(function() {})()是该匿名函数的调用。


这是可行的,因为函数可以像数据一样传递。所以window.alert是已知alert函数本身window.alert()会调用该函数。


由于函数具有自己的变量范围,因此经常使用此技术来保持当前变量范围的整洁。


查看完整回答
反对 回复 2019-10-21
  • 3 回答
  • 0 关注
  • 601 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号