美文网首页
js中(function(){}()),(function(){

js中(function(){}()),(function(){

作者: 前端召唤师 | 来源:发表于2019-07-24 18:17 被阅读0次

参考:https://blog.csdn.net/stpice/article/details/80586444

  1. (function(){}()), (function(){})()

均为立即执行函数——IIFE (Immediately Invoked Function Expression)

写法:
(1)(function foo(){/.../}());

(2)(function foo(){/.../})();

(3)!function foo() {/.../}();

(4)+function foo() {/.../}();

(5)-function foo() {/.../}();

(6)~function foo() {/.../}();

IIFE函数可传参,写法:(function foo(arg1,arg2,...){...}(param1,param2,...));
如:(function(){...})(jQuery); 即是将实参jQuery传入函数function(){},通过形参$接收。

上述函数中,最开始的那个括号,可能会由于js中自动分号插入机制而引发问题。例如:

a = b + c
;(function () {
// code
})();

如果没有第二行的分号,那么该处有可能被解析为c()而开始执行。
所以有的时候,可能会看到这样的写法:;(function foo(){/.../}()),前边的分号可以认为是防御型分号。

  1. $(function(){})

是$(document).ready(function(){/.../})的简写形式,是在DOM加载完成后执行的回调函数,并且只会执行一次。

在一个页面中不同的js中写的$(function(){/.../});函数,会根据js的排列顺序依次执行

相关文章

  • js中(function(){}()),(function(){

    参考:https://blog.csdn.net/stpice/article/details/80586444 ...

  • JS中Function和Object的关系

    JS中到底谁从属于谁? Function instanceOf Function //true Function ...

  • js function/Function

    函数定义函数是由这样的方式进行声明的:关键字 function、函数名、一组参数,以及置于括号中的待执行代码。函数...

  • 品牌列表

    导入JS $(function () { $('#btn').click(function () { ...

  • 注册

    $(function(){ $('#_js_loginBtn').on('click',function(e){ ...

  • js function 中的this

    对于function中的this,需要明确一点的是它只有在function执行的时候才能被确定。并且this指的是...

  • Js function

    .map map 方法会迭代数组中的每一个元素,并根据回调函数来处理每一个元素,最后返回一个新数组。 用 map ...

  • JQ

    入口函数 $(document).ready(function(){});$(function(){}); js入...

  • 关于js中的this调用

    js中定义一个function,在该function中使用关键字this时要注意,如果你定义function是为了...

  • 宏任务与微任务

    规则 Js解析Function(整个script视为global Function)时,将同步任务排队到执行栈中,...

网友评论

      本文标题:js中(function(){}()),(function(){

      本文链接:https://www.haomeiwen.com/subject/iryfrctx.html