标签: iife

这种未知的JavaScript语法是什么?

这是jQuery代码吗?

(function(jQuery){
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

相当于

$(document).ready(function () {
});
Run Code Online (Sandbox Code Playgroud)

如果是,两者之间有什么区别?如果没有,第一个做什么?

编辑:

谢谢大家.大多数反应与不同的口味和样品相似

javascript jquery anonymous-function iife

2
推荐指数
1
解决办法
172
查看次数

在显示模块模式中使用自执行匿名函数

只是想知道它是否是一个很好的JavaScript实践.

假设我有许多网页都调用了初始化函数"init()",在我的模式中使用IIFE在每次加载脚本时运行函数是否正确?

var foo = (function() {
    var bar = "something";

    (function init() {
        // Do something crazy that's gonna be the same across all my web pages
        // like adding an event listener or something
        // ...
        document.write('page init...');
    }());

    function privatePage1() {
        // This stuff is gonna be used only in page1.html via foo.privatePage1
        document.write('page 1' + bar);
    }

    function privatePage2() {
        // This stuff is gonna be used only in page2.html via foo.privatePage2
        document.write('page 2' …
Run Code Online (Sandbox Code Playgroud)

javascript design-patterns iife

2
推荐指数
1
解决办法
2765
查看次数

Javascript 语法:带参数的立即调用函数表达式 (IIFE)

我一直看到这样的代码:

(function(){
   //code here
})();
Run Code Online (Sandbox Code Playgroud)

这段代码是如何工作的?哪个函数接收哪些参数?

(function(factory){
   //code here
}(function($){
  //other code here
}));
Run Code Online (Sandbox Code Playgroud)

javascript iife

2
推荐指数
1
解决办法
1601
查看次数

TypeScript模块中的JavaScript IIFE中默认参数的目的是什么?

如果我创建一个简单的TypeScript module命名test,它将类似于以下内容:

module test
{
    export class MyTest {
        name = "hello";
    }
}
Run Code Online (Sandbox Code Playgroud)

结果将JavaScript创建一个IIFE类似于以下内容的:

var test;
(function (test) {
    var MyTest = (function () {
        function MyTest() {
            this.name = "hello";
        }
        return MyTest;
    })();
    test.MyTest = MyTest;
})(test || (test = {}));
Run Code Online (Sandbox Code Playgroud)

我不明白是什么是底了以下行的目的IIFE,它包含的参数为function

(test || (test = {}));
Run Code Online (Sandbox Code Playgroud)

结果函数还接受参数test

(function (test) {
Run Code Online (Sandbox Code Playgroud)

我理解使用参数传递jQuery诸如' object like之类})(jquery);的结果时,结果函数可以采用like这样的别名(function ($) {。但是,我只是没有看到(test …

javascript iife typescript

2
推荐指数
1
解决办法
268
查看次数

参考IIFE内部的功能

我有以下逻辑:

var first_function = (function(d3, second_function) {
  function third_function(param1, param2) {
    /* do stuff here */
  }
})(d3, second_function);
Run Code Online (Sandbox Code Playgroud)

在IIFE结构之外,为了访问第三个函数,我通常可以这样做:

first_function.third_function(data1, data2);
Run Code Online (Sandbox Code Playgroud)

我哪里错了?

javascript logic closures function iife

2
推荐指数
1
解决办法
782
查看次数

IIFE和全球范围的JavaScript

为什么下面的代码结果的记录b,同时a还是undefined

(function(){ var a=b=5; })();
console.log('b:'+b);
console.log('a:'+a);
Run Code Online (Sandbox Code Playgroud)

javascript global-variables iife

2
推荐指数
1
解决办法
1715
查看次数

为什么ES6 IIFE和ES5 IIFE的执行环境不同?

关于总结问题的标题 - 这是代码示例:

!function() {
    console.log(this); // global object
}();

(function() {
    console.log(this); // global object
})();

() => {
    console.log(this); // {}
}();

var x = (function() {
    console.log(this); // global object
})();
Run Code Online (Sandbox Code Playgroud)

箭头功能背后发生了什么?如果我想在ES5中使用该范围,据我所知,我必须将执行绑定到一个空对象,如下所示:

!function() {
    console.log(this); // global object
}.bind({})();
Run Code Online (Sandbox Code Playgroud)

javascript iife executioncontext ecmascript-6

2
推荐指数
1
解决办法
203
查看次数

为什么在这种情况下使用IIFE?

一篇关于浏览器插件开发的文章中,他们使用以下代码:

window.browser = (function () {
  return window.msBrowser ||
    window.browser ||
    window.chrome;
})();
Run Code Online (Sandbox Code Playgroud)

为什么他们会使用IIFE,而不是说:

window.browser = window.msBrowser || window.browser || window.chrome;
Run Code Online (Sandbox Code Playgroud)

是否有一些IIFE带给我的桌子,我正在俯瞰?

javascript iife

2
推荐指数
1
解决办法
75
查看次数

IIFE。TypeError:require(...)(...)不是函数

运行简单的脚本。出错了。

const fetch = require("node-fetch")
const url = "https://www.someurl.com"

(async ()=>{
    const response = await fetch(url)
    const data = await response
    console.log(data)
})()
Run Code Online (Sandbox Code Playgroud)

错误

$ node api.js TypeError:require(...)(...)不是一个函数

我在这里想念什么?谢谢。

node.js iife

2
推荐指数
1
解决办法
448
查看次数

为什么不能在一个简单的例子中工作呢?

我无法理解为什么函数表达式调用不起作用并抛出错误.

你能解释一下吗?

var a = function (x) {
  alert(x)
}

(function() {
   a(1);
}());
Run Code Online (Sandbox Code Playgroud)

谢谢大家

这项任务比我想象的容易得多

javascript iife

2
推荐指数
1
解决办法
130
查看次数