![](/img/trans.png)
[英]ESLint un-used varialbes rule for parameters of function type in TypeScript
[英]Javascript Prototype method and un-used variables
我目前正在通過原型方法構建對象。 該對象不需要用戶構建的方法,雖然工廠方法在這里可能更好,但我更喜歡原型。
我想知道var buf = data._raw;
。 返回對象后, buf
會發生什么情況,它是否會導致內存泄漏或被垃圾回收,還是會發生其他事情?
var Identification = function(data){
var buf = data._raw;
this.def = data.def;
this.master = buf.readUInt8(9);
this.version = buf.readUInt8(10);
//more reading from a buffer...
}
module.exports = Identification;
我通過傳入包含3個屬性的data
在另一個模塊中調用此函數。 def
, _raw
, length
,其中def
是對象類型的int
表示形式, _raw
是緩沖區,而length
是緩沖區長度。
var Identification = require('./Identification');
function main(){
var identification = new Identification(data);
}
main();
這是不好的做法嗎? 我將來會開放我的代碼來解決問題嗎?
謝謝。
對象返回后,
buf
會怎樣?
它是垃圾收集的,因為沒有任何東西再引用變量/值了。 您的構造函數似乎沒有導出仍然可以訪問buf
閉包。
它會導致內存泄漏嗎?
不,為什么呢? 標准垃圾收集規則也適用於構造函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.