Я только что нашел John Resig's Array.remove() функция. [Похоже, что его сайт неправильно разбирает bb-код, поэтому его трудно прочитать!]Javascript Array.remove() от John Resig - почему он перечисляет в for-in утверждение?
Хотя это изящно, проблема в том, что метод remove() перечисляет в инструкции for-in для каждого массива после загрузки его кода.
Например, после того, как предваряя свой код, сделайте следующее:
var a = ["a", "b", "c"];
for (i in a)
{
console.log(i);
}
И вы получите:
0
1
2
remove
Почему не все другие встроенные свойства и методы объекта Array, перечислять, и есть ли способ предотвратить это для метода remove()?
Обратите внимание, что этот пост в блоге - почти 9 лет назад. Это древний; как правило, не обращайте внимания на что-либо о JavaScript из этого давно, пока не получите подтверждение, что это все еще актуально. – Pointy
@Pointy, теперь есть лучший способ удалить элементы массива? –
Код неплохой, но дело в том, что за последние 9 лет многое изменилось. Г-н Ресиг не стал бы писать этот код так же, как сейчас, я бы поспорил. – Pointy