Я надеялся очищать массив в ActionScript 3.
Некоторый метод предлагает: array = [];
(Утечка памяти?)
Другой сказал бы: array.splice(0);
Если у Вас есть кто-либо другой, совместно используйте. Какой является более эффективным?
Спасибо.
array.length = 0
или array.splice()
, кажется, работают лучше для общей производительности.
array.splice(0);
будет работать быстрее, чем array.splice(array.length - 1, 1);
Интересно, почему вы хотите очистить массив таким образом? очистка всех ссылок на этот самый массив сделает его доступным для сборки мусора. array = []
будет делать это, если array
является единственной ссылкой на массив
. если это не так, то, возможно, вам не следует его пустить (?)
, обратите внимание, что массивы принимают строки в качестве ключей. и splice, и lenght работают исключительно с целочисленными ключами, поэтому они не будут иметь никакого эффекта на строковые ключи.
кстати .: array.splice (array.length - 1, 1);
эквивалентно array.pop ();