Tag: closures

什么是C#中的“闭包”?

重复 .NET中的闭包 什么是C#中的闭包?

javascript – 如何使这个代码工作?

代码给我:A B C 当我点击美国广播公司总是显示我最后一个“伏特加”。 我想要“martin”(对于A),“lindsay”(对于B),“伏特加”(对于C) 请帮我看看我的例子。 myArray = [ { letter: "A", brand: "martin" }, { letter: "B", brand: "lindsay" }, { letter: "C", brand: "vodka" } ]; var list = ''; for (var i = 0; i < myArray.length; i++) { list += "<br>" + myArray[i].letter; new_info = myArray[i].link; (function(new_info) { $(this).click(function(){ //this – […]

Javascriptclosures不起作用

我读过这些问题: 循环中的JavaScript闭包 – 一个简单实用的例子 JavaScriptclosures如何工作? 如何将JSvariables的值(不是引用)传递给函数? 并试图应用他们的解决scheme(以及至less二十二个其他实现),他们都没有工作。 这里是循环的函数: ExecuteQueryWhereQueryAndParamsBothArrays: function (queryArray, paramsArray, idsArray, success, fail, errorLogging) { var hasError = false; $rootScope.syncDownloadCount = 0; $rootScope.duplicateRecordCount = 0; $rootScope.db.transaction(function (tx) { for (var i = 0; i < paramsArray.length; i++) { window.logger.logIt("id: " + idsArray[i]); var query = queryArray[i]; var params = paramsArray[i]; var id = […]

JavaScript中的每个函数都是封闭的吗?

我明白,JavaScript中的每个函数都是一个一级对象,并且它有一个内部属性[[scope]],它托pipe函数的自由variables的绑定logging。 但是,有两个特例。 Function构造函数创build的函数是否也是闭包? 由Function构造函数创build的函数对象是特殊的,因为它的[[scope]]不能引用其外部函数的词法环境,而只能引用全局上下文。 例如, var a = 1; var fn = (function outer() { var a = 2; var inner = new Function('alert(a); '); return inner; })(); fn(); // will alert 1, not 2. 这是不直观的。 这也被称为封闭? 如果一个内部函数没有任何自由variables,那么当内部函数被创build时,我们可以说是闭包吗? 例如, // This is a useless case only for academic study var fn = (function outer() { […]

是否有可能获得closuresfunction?

JavaScript中的一个函数通过保持(隐藏)链接到其封闭范围来形成闭包。 当我们有函数(作为variables值)时,是否有可能以编程方式访问它? 真正的目标是理论上的,但是可以列举闭包的属性。 var x = (function(){ var y = 5; return function() { alert(y); }; })(); //access y here with x somehow

在C#5.0中捕获的闭包(循环variables)

这工作正常(意味着如预期)在C#5.0中: var actions = new List<Action>(); foreach (var i in Enumerable.Range(0, 10)) { actions.Add(() => Console.WriteLine(i)); } foreach (var act in actions) act(); 打印0到9.但是这个10次显示10次: var actions = new List<Action>(); for (var i = 0; i < 10; i++) { actions.Add(() => Console.WriteLine(i)); } foreach (var act in actions) act(); 问题:这是我们在5.0之前的C#版本中遇到的问题; 所以我们必须使用循环本地占位符来封闭,现在在C#5.0中,在“foreach”循环中已经修复了。 但不是在“for”循环中! 这背后的原因是什么(也没有解决for循环的问题)?

我怎样才能在Linux中运行一个Perl脚本作为系统守护进程?

在Linux中获取Perl脚本作为守护进程运行的简单方法是什么? 目前,这是在CentOS上。 我希望它启动与系统和closures与系统,所以一些/etc/rc.d/init.d集成也不错,但我总是可以添加一个自定义行到/etc/rc.d/rc.local 。

你如何testing函数和平等closures?

这本书说,“function和封闭是参考types”。 那么,你怎么知道引用是否相等? ==和===不起作用。 func a() { } let å = a let b = å === å // Could not find an overload for === that accepts the supplied arguments 以下是Catterwauls如何处理这个问题: 多种shell和可自动closures testing

JavaScript中的闭包的实际用法是什么?

我正在尽我最大的努力来围绕JavaScriptclosures。 我通过返回一个内部函数来获得它,它将有权访问其直接父级中定义的任何variables。 这对我有用吗? 也许我还没有把我的头脑呢。 我在网上看到的大多数例子都没有提供任何真实世界的代码,只是模糊的例子。 有人能告诉我一个真正的世界使用封闭? 例如,这是一个吗? var warnUser = function (msg) { var calledCount = 0; return function() { calledCount++; alert(msg + '\nYou have been warned ' + calledCount + ' times.'); }; }; var warnForTamper = warnUser('You can not tamper with our HTML.'); warnForTamper(); warnForTamper();

你能解释闭包(与Python有关)吗?

我一直在阅读很多关于封闭的内容,我想我理解他们,但是没有让自己和其他人蒙上阴影,我希望有人能够尽可能简洁清楚地解释封闭。 我正在寻找一个简单的解释,可能会帮助我了解我想要使用它们的位置和原因。