2017-06-28 3 views
0

次のコードを仮定:クロージャ内で使用されていない未使用の変数はGCしますか?

const someFunction = (someString, largeObject) => { 
    console.log(largeObject.huge); 

    setTimeout(() => { 
    console.log(someString); 
    }, 10000000000000); 
}; 

someFunction('something', { huge: 'object', tons: 'of data' }); 

someFunctionlargeObjectを使用して、将来的には道と呼ばれる匿名関数を作成します。新しい関数はlargeObjectをまったく使用しません。

someFunctionが返された後にlargeObjectがガベージコレクションを取得するか、または匿名関数が範囲を超えてクロージャを持っているために固執しますか?

答えて

1

classInstance変数をもう参照できない限り、GC'dする必要があります。したがって、largeObjectはGC

関連する問題