javascript自实行函数

定义

马上实行函数形式是一种语法,能够让你的函数在定义后马上被实行,
这类形式本质上就是函数表达式(定名的或许匿名的),在建立后马上实行;
马上实行函数(immediate function)术语不是在ECMAScript规范中定义的,但它很短有助于形貌和议论形式;
这类形式有一些几部分构成:

  • 运用函数表达式定义一个函数(函数声明不能起作用)

  • 在末端加上一对括号,让函数马上被实行

  • 将全部函数包裹在一对括号中(只要在你不将函数赋值给一个变量的时刻才须要)

功用

  • 它能够帮你封装大批的事情而不会在背地遗留任何全局变量。

  • 你定义的一切变量都邑成员马上实行函数的局部变量,所以你不必忧郁这些暂时变量会污染全局空间

  • 能够运用这类手艺能够模拟一个私有作用域,用匿名函数作为一个“容器”,“容器”内部能够接见外部的变量,而外部环境不能接见“容器”内部的变量

  • 能够增加更多的增强模块,移除它们,零丁测试它们,许可用户去禁用它们等等
    为何要有js马上实行函数,存在的意义是什么

注重点

马上实行函数平常作为一个零丁模块运用。平常没有问题,然则,发起在本身写的马上实行函数前加分号,如许能够有效地与前面代码举行断绝。不然,能够涌现意想不到的毛病。
js自实行函数前加个分号是什么意义?

写法

  1. 最前末了加括号

    (function(){alert(1);}());

    JSLINT引荐这类写法

  2. function表面加括号

     (function(){alert(1);})();

    现在许多比较好的js library 运用的都是第二种体式格局。
    比方: web 图形绘制的: git , draw2d ,….

  3. function前面加运算符,罕见的是!与void

    !function(){alert(1);}(); 
    void function(){alert(2);}(); 

    在function前面加!、+、 -以至是逗号比及都能够起到函数定义后马上实行的结果,而()、!、+、-、=等运算符,都将函数声明转换成函数表达式,消除了javascript引擎辨认函数表达式和函数声明的歧义
    js中马上实行函数

    原文作者:jasminecjc
    原文地址: https://segmentfault.com/a/1190000006813113
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞