Показать сообщение отдельно
  #5 (permalink)  
Старый 24.04.2017, 12:35
Профессор
Отправить личное сообщение для SV0L0CH Посмотреть профиль Найти все сообщения от SV0L0CH
 
Регистрация: 07.11.2010
Сообщений: 301

ksa,
В этом случае создаётся новый массив, а удалить надо из заданного. Вдруг он связывает несколько замыканий и необходимо на них повлиять одинаково. Или может в нём есть нечисловые поля и надо сохранить его поведение. Иначе, я бы рекомендовал не splice а нечто наподобие этого:
var arr = [
    "dd123",
    "dd322",
    "dd453",
    "gg444",
    "gg554",
    "dd789"
];
alert(JSON.stringify(arr.filter(function(str){
    return !(/^dd.*$/.test(str));
})));

Хотя, можно проделать и такое:
var tmp = arr.filter(function(str){
    return !(/^dd.*$/.test(str));
});
arr.length = 0;
[].push.apply(arr, tmp);

Последний раз редактировалось SV0L0CH, 24.04.2017 в 12:39.
Ответить с цитированием