问题标签 [self-invoking-function]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
138 浏览

javascript - (func)() 和 (func).call(window) 之间的区别

我正在研究如何使用创建一些插件angularjs,其中一些我遇到了这个问题:

与仅使用如下所示的自调用函数有什么区别?

0 投票
3 回答
230 浏览

javascript - NodeJS:在对象中创建条件属性的方法比自调用函数更短?(ES5 或 ES6)

有没有更短的方式来表达以下内容?(ES5 或 ES6)

0 投票
0 回答
56 浏览

javascript - JavaScript 闭包在这个示例案例中是如何工作的?

我对 Javascript 闭包概念比较陌生。我知道如何完成工作,但我想彻底理解这个概念。

有人可以简短地解释一下,为什么示例 1,2 有效,而 3,4 无效?任何关于 js 闭包的好链接也将不胜感激。

示例 1

示例 2

示例 3

示例 4

0 投票
1 回答
69 浏览

javascript - 如何在不将“this”存储在变量中的情况下将“this”上下文传递给自调用匿名函数?

理想情况下,我们可以使用该Function.prototype.bind函数来做到这一点。我认为这里也没有一种使用胖箭头功能的明确方法。Ycombinator 魔法?

这是我到目前为止所尝试的:

0 投票
2 回答
65 浏览

javascript - 自调用函数

使用的重要性!在这段代码中

0 投票
1 回答
114 浏览

javascript - JavaScript - 自调用函数看不到来自外部脚本的函数

我对以下代码的范围有一个概念性问题。

该代码是两个表单的简单客户端验证脚本。

我使用自调用函数来尝试不同的方法,避免设置所有全局变量,但它的行为对我来说似乎有点奇怪。

我仍在学习使用 JavaScript 编写代码,而且我不是专家,但这些高级功能有点复杂。

我不想使用 jQuery,而只想使用纯 JavaScript 来学习基础。

Web 控制台一直告诉我没有定义单个验证函数。

为什么?

它们应该从外部脚本加载。此外,它们应该具有全局范围。

先感谢您 :)

0 投票
0 回答
30 浏览

javascript - Javascript自调用函数

我在 Bootstrap-sweetalerts 脚本中遇到了下面的行。

正如我测试it _handleDom.addClass的那样,它需要两个参数,_handleDom.addClass($text, params.textClass)但是第一个参数的0代表什么?

0 投票
0 回答
87 浏览

javascript - 自调用函数会干扰 window.onload,除非

我在自调用函数window.onload之前有一个函数。

HTML 很简单:

当我尝试在 window.onload 函数中查找 DOM 元素时,它返回“ null”。除非我添加一行代码来存储未使用的变量。

有人可以帮我理解为什么它会这样工作吗?这行未使用的代码在做什么?我感觉这与自调用函数的工作方式有关,但我不确定。

注意:我试图将其作为小提琴分享,但它导致控制台日志略有不同。如果这有所作为,我得到的控制台日志与 Chrome 一起使用。

0 投票
1 回答
136 浏览

javascript - 自调用函数调用其他函数的问题

在我的 index.html 文件中(在关闭 body 标记之前),我想要一个函数在页面加载时自行调用。但是,当函数(此处为 setUp)在外部文件中定义时,我遇到了问题。

如果我在 Index.html 中复制粘贴 setUp 函数,那么一切都会按预期工作。

我是 JS 新手:我是否错误地链接了脚本文件?谢谢!

索引.html

代码.gs

0 投票
2 回答
39 浏览

javascript - 来自外部范围的自执行匿名函数参数

我按照教程遇到了以下代码。

以上输出3。

我的问题是

  1. 内部如何incrementbytwo从外部接收参数,因为它是 a Self-Executing Anonymous Functions
  2. 逐步解释这是如何执行的。
  3. 使用这样的功能的真实场景是什么?