我有以下代碼:清除數組分配新的元素
if ((mySo.data.currentIds != null) &&
(mySo.data.currentIds.length > 0))
currentIds = mySo.data.currentIds.split(',');
此前,currentIds
與此代碼初始化:
currentIds = new Array(-1, -1, -1);
我想問,如果這是替換的最好方式新陣列中的元素:
currentIds = mySo.data.currentIds.split(',');
我在說內存泄漏和性能。我不知道`currentIds'的前一個實例是否從內存中清除。
也許,我能做到這一點,而不是:
currentIds.splice(0, 3, mySo.data.currentIds.split(','));
有什麼建議?
我沒有看到任何問題。假設你的數組只包含數字,而不是對象的引用......在我看來,你只是創建一個新的數組。 – Corey
與前一個數組分配給'currentIds'有什麼關係?我是否創建了內存泄漏? – VansFannel
@VansFannel,如果你有很多對currentIds的引用,你可能會造成內存泄漏。雖然可能沒關係。然而,你的'拼接'沒有做你認爲它正在做的事情。請參閱下面的答案。 –