|
|
1
101
通常你这样做是为了 closures :
内部函数可以从封闭范围访问变量(在本例中,是本地变量
|
|
|
2
51
除了函数生成器(内部函数创建几乎是函数生成器的定义)之外,我创建嵌套函数的原因是为了提高可读性。如果我有一个只由外部函数调用的小函数,那么我将内联该定义,这样您就不必跳过来确定该函数在做什么。如果我发现以后需要重用函数,我可以将内部方法移到封装方法之外。 玩具示例:
|
|
|
3
24
使用内部方法的一个潜在好处是,它允许您使用外部方法局部变量,而不将它们作为参数传递。
可以写如下,可以说读起来更好
|
|
|
4
8
我想不出有什么好的理由来编写这样的代码。 也许有一个原因,在旧版本的内部功能,像其他操作。 例如,这使得 轻微地 更有意义:
但是,内部函数应该是(“private”)类方法,而不是:
|
|
|
5
6
局部方法背后的思想类似于局部变量:不要污染较大的名称空间。显然,这些好处是有限的,因为大多数语言都不直接提供这种功能。 |
|
|
6
1
你确定密码是这样的吗?这样做的正常原因是为了创建一个局部函数——一个带有烘焙参数的函数。调用外部函数返回一个不需要参数的可调用文件,因此可以存储和使用在不可能传递参数的地方。但是,您发布的代码不会这样做——它会立即调用函数并返回结果,而不是可调用的结果。发布您看到的实际代码可能很有用。 |