色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

外層函數的定義

李中冰2年前29瀏覽0評論

外層函數的定義?

所謂的外層函數的定義如下

1. 嵌套函數,是指在另一個函數里面定義的一個函數。外層的函數,這里簡稱為外層函數。

2. 函數的嵌套可以是多層嵌套。嵌套函數可以看到其全部的外層函數的非局部變量。在實際程序中,嵌套的層數一般很少。下面是一個三層嵌套的例子, innerOfInner 也可以訪問在 outer 函數體重定義的變量 x 。

3. 嵌套函數對非局部變量擁有讀和寫的權限。

4. 如果一個嵌套函數可以逃離外層函數,例如函數是第一公民,并且內嵌的函數被傳到另外一個函數作為參數或者被當做返回值,那么,就會產生一個閉包 ( closure ),通過調用逃離的函數,可以訪問函數的原本的環境變量。此時,外層函數的框架 ( frame )會繼續存在,直到所有指向此框架的閉包消失。閉包所指向的非局部變量會從棧內存被移到堆內存。

5. Javascript 支持嵌套函數。Java 通過 Lambda 表達式,內部類,匿名類來間接支持內置函數。

例子,add 是外層函數,plus 是嵌套函數。counter 對于 add 來說是局部變量,對于 plus 來說則是非局部變量 ( non-local variable )。在一個外層函數 add 的函數體里面,定義了一個嵌套函數 plus ,然后調用嵌套函數,并返回結果。

java 匿名類,外層函數的定義