我是Javascript的新手.我理解匿名函数的概念 - 但是闭包似乎不太清楚.两者之间的相似性(至少在我看来)是令人困惑的.
有人可以解释这个区别吗?(最好是使用一些代码片段来说明要点更清楚).
重要的区别是闭包捕获了它定义的范围.
换句话说,闭包可以访问变量及其状态,即使它们属于闭包的父作用域(例如,闭包创建的函数).这允许闭包捕获并"传输"程序周围的应用程序状态.
匿名函数不能这样做; 它的范围仅限于在其体内和特征(即其参数)内定义的变量.
编辑:只是为了澄清:在JavaScript中,特别不清楚,因为没有语言结构称为闭包.你仍然会使用匿名函数.我只是指概念上的差异.
| 归档时间: |
|
| 查看次数: |
5612 次 |
| 最近记录: |