gpt4 book ai didi

closures - 每个函数都是闭包吗?

转载 作者:行者123 更新时间:2023-12-04 23:18:03 28 4
gpt4 key购买 nike

只是想知道,因为闭包是一个函数,它引用了它定义之外的变量/方法。
每个函数都关闭程序的全局变量(基本上在每种主流语言中,无论是 javascript/python/c/c+/whatever)。
那么,因此,每个函数都是一个闭包吗?

编辑:让我再次强调一下,我不仅在谈论 javascript 中的闭包,而且在更一般的上下文中谈论

最佳答案

对,就是这样。正如您所确定的,JavaScript 中的每个函数都是至少一个上下文的闭包:全局上下文。这就是全局变量在 JavaScript 中工作的方式/原因。

我们通常不称它们为闭包,除非它们在其他上下文中关闭并且实际上利用了它们这样做的事实,但你说得对,在技术层面上它们都是。

Every function closes over program's global variables (basically in every mainstream language, be it javascript/c/c+/whatever).



我不会这么概括,不。不同的语言有不同的方式来实现全局变量。这些语言中的函数是否都是“闭包”可能还有待商榷,所以我将上面的答案限制在 JavaScript 上。

关于closures - 每个函数都是闭包吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35130415/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com