问题标签 [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.
javascript - Javascript自调用函数在角度离子中不起作用
控制器内部的代码是:
如您所见,此函数正在调用服务配置文件和该服务的方法。问题是此调用函数不起作用。给出错误:
TypeError: (intermediate value)(...) is not a function
。在 plunker 中,我检查了一个琐碎的自调用函数。这是链接:http: //jsfiddle.net/Lvc0u55v/4582/。这个微不足道的自调用功能正在工作。但我不明白为什么我的实际应用程序自调用功能不起作用。谢谢您的时间。
目前的工作版本(非自调用)是:
$scope.friendship_requests_to_me_function = function(){
$scope.show();
profile.friend_requests_to_me_service(loggedInUser.id).then(function(data){
console.log(data);
$scope.friend_requests_to_me = data.data.friend_request_to_me;
$scope.friends = data.data.people_you_may_know;
$scope.hide();
});
}
$scope.friendship_requests_to_me_function();
javascript - 连接 JavaScript 文件并将它们封装到一个自调用函数中 - 可能的缺点?
可以将多个 JavaScript 文件合并为一个,然后将生成的代码封装到一个自调用函数中,因此这些 JS 文件中的所有代码都变成:
这样就完全不会污染全局命名空间,现在可以在单独的 JS 文件中定义内部模块,这些模块可以跨 JS 文件访问。
除了使内部模块的调试不那么方便(因为无法浏览内部对象、从控制台手动调用它们的函数等)之外,这种方法是否有任何潜在的缺点?
或者,是否有更好的方法允许在可以跨 JS 文件访问的单独 JS 文件中定义内部模块?
以防万一,gulp 代码将 JavaScript 文件连接成一个,然后将生成的代码封装到一个自调用函数中:
javascript - javascript: 这是什么: (function(args){})(moreArgs){});
我仍然一次又一次地尝试掌握 javascript。我查看其他脚本以获得灵感和学习。有人知道这是什么吗:
它是jquery的骨架。有人可以向我解释这是如何工作的吗?谢谢!
这是更多的骨架:
javascript - JavaScript 中令人困惑的作用域和自调用
让我们看一下这个例子:
然后我们有不同的方式来调用这个函数:
我理解前 3 行,但任何人都可以向我解释进一步发生了什么(第 4 到 7 行)。这很令人困惑。
javascript - javascript自调用匿名函数的使用
请参阅以下代码块。哪一个是最好的选择?基本上他们都在做同样的事情
示例 1
示例 2
示例 3
对比这三个例子,我更喜欢使用自调用匿名函数(例子3),原因如下
不需要创建不必要的变量和分配内存(ex1:valid,ex2:isValid)
保持代码干净,一块一块或一个模块,以便于管理和组织
自包含,以便自调用匿名函数之外的变量不会被污染
如果我在上述任何一点上错了,请纠正我,并告诉我您的偏好和原因是什么?
javascript - 这些括号是如何真正起作用的?
应该是简单的问题。我最近开始学习这些保留私有变量的自调用函数和闭包,现在我脑子里有点乱。我看到人们以不同的方式做这件事,我想知道,这实际上可能是同一件事吗?
据我了解,第一个是函数定义的自调用表达式,而第二个是自调用函数定义的表达式。但这是正确的,有什么区别(在实践中,技术或性能)?这两个(相同类型的)关闭吗?
我自己是一位经验丰富的程序员,所以我很高兴知道这是如何工作的。谢谢!
javascript - 对象在 Chrome 内容脚本的函数内不可见
我正在开发一个简单的 Chrome 扩展程序。在内容脚本(称为script.js
)中,我有以下代码:
通常,此代码按预期工作。但是,有时它会在上面指出的两行之一引发错误script.js
,说明buttonText
未定义。在它抛出此错误之前,我已经能够在调试器中捕获它几次。在这些情况下,buttonText
在顶级函数中定义但在内部不可见inject
。我不知道在成功运行和产生错误的运行之间有什么变化。是否有众所周知的 JavaScript 或 Chrome 相关原因会发生这种情况?还是必须是我在代码中创建的问题?
这是扩展程序的清单,以防其相关:
javascript - 自调用函数作为 jQuery 文档就绪回调
和有什么区别
和
javascript - 为什么变量不在闭包中重置(Javascript)
我一直在尝试了解闭包,但有一件事仍然让我感到困惑。如果我有以下代码:
如果我调用 add() 三次,为什么不每次都将 counter 设置为零,然后返回将 counter 加一的匿名函数?一旦自调用函数运行,它会跳过它吗?对不起,如果这个问题看起来很简单,我很难理解它。任何帮助将不胜感激。
javascript - 在 for 循环中使用自调用函数仅执行一个函数并退出
我想由用户和计算机随机实现一个点击器。单击一个单元格后,我需要停止用户单击事件。我的随机函数未执行。这是因为左自调用函数正在等待单击。您只需单击一个单元格(id)并继续执行随机函数。
}