js之立即执行函数作用,js之立即执行函数几种写法

  js之立即执行函数作用,js之立即执行函数几种写法

  一个。定义:

  这种函数是未声明的,在一次执行后就会被释放(销毁)。

  好处:为了避免变量污染(命名冲突),适合初始化。这相当于创建一个“私有”名称空间。这个名称空间的变量和方法不会破坏全局名称空间。

  (PS:立即执行函数是预编译的,有执行时上下文,但运行后会被销毁)

  两个。公文写作:(有两种)

  1.这也是W3C标准推荐的书写方式:

  一个匿名函数后面跟着一个括号,整个函数被包装在一个括号操作符中。

  (function(){ }());2.第二种写法:

  匿名函数包含在括号运算符中,后面跟一个括号。

  (function(){ })();三个。关闭和关闭相结合的一个例子:

  在下面的闭包代码中填入代码,在页面上输出0123456789。

  脚本类型=文本/javascript

  功能测试(){

  var arr=[];

  for(var I=0;i 10i ){

  //在这里填写代码

  }

  返回arr

  }

  var myarr=test();

  for(var j=0;j 10j ){

  myarr[j]();

  }

  /脚本解决方案:使用立即执行函数。当你读到这里时,它将被立即执行,也就是说,它将在for循环中执行。

  知识点:对于循环嵌套函数,然后保存到外部。结束。立即执行该功能。

  解决方案代码如下:

  (函数(j){

  arr[j]=function(){

  document . write(j );

  }

  }(I));四个。在后来的一些学习中,整理了一些知识点,供大家参考:

  1.执行符号只能执行表达式。

  这里涉及到三个概念:函数声明、函数表达式和匿名函数。让我给你解释一下。

  1.)函数声明:函数关键字函数名

  函数fnName() {.} ;2)函数表达式:var变量名=函数关键字函数体执行语句(这里没有函数名)

  var fnName=function() {.} ;3)匿名函数:函数体执行语句(这里没有函数名)

  函数(){.} ;匿名函数属于函数表达式。他有很多优点。——1.给一个变量就产生了一个函数。2.给一个事件成为一个事件处理程序或者创建一个闭包。

  一般来说,立即执行函数必须是函数表达式。

  2.一个表达式被执行后,它有一个自然的函数:忽略这个函数的名字。

  功能测试(){

  console . log(a);

  }();

  执行后,测试被销毁。PS:面试问题。在这里,和大家分享一个很有意思的话题。是阿里的一个面试问题,刚好涉及到这里,很混乱。

  看看下面的代码,猜猜页面上会发生什么有趣的事情。

  脚本类型=文本/javascript

  功能测试(a、b、c、d){

  console . log(a b c d);

  }(1,2,3,4);

  /script你必须猜测控制台上会输出一个和,也就是10。一开始我是这么想的,其实不是。看下图:

  很有趣,不是吗?没发生什么事。计算机没有报告错误,也没有执行内容。

  当时我也很迷茫。通过我的百度知识点查了一些东西,简单给大家说一下。

  在计算机内部,他的代码被标识为:

  脚本类型=文本/javascript

  功能测试(a、b、c、d){

  console . log(a b c d);

  }

  (1,2,3,4);

  /脚本

  计算机将此理解为函数声明,函数声明之后是类似这样的内容:

  逗号运算符,后跟一个括号。

  我们知道逗号运算符的结果是4,但是跟函数声明是没用的,所以计算机内部系统最后识别为函数声明,只是声明,没有函数执行。所以页面和控制台上什么都没有。很有趣,不是吗?好了,你马上分享功能到此为止。如果想了解一些其他有趣的前端知识,请关注我。

  我会随时更新一些有趣的知识。

  版权归作者所有:原创作品来自博主wx5c4a6751206d9,转载请联系作者授权,否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: