Мені було цікаво, як би я застосував метод у javascript, який видаляє всі елементи масиву, що очищають певну умову. (Бажано без використання jQuery)
Напр.
ar = [ 1, 2, 3, 4 ];
ar.removeIf( function(item, idx) {
return item > 3;
});
Вищезазначене пройде кожен елемент масиву та видалить усі, що return trueвідповідають умові (у прикладі, елемент> 3).
Я тільки починаю з javascript і цікаво, чи знав хтось про короткий ефективний спосіб зробити це.
- оновлення -
Також було б чудово, якби умова могла працювати і на властивості об’єкта.
Напр.
ar = [ {num:1, str:"a"}, {num:2, str:"b"}, {num:3, str:"c"} ];
ar.removeIf( function(item, idx) {
return item.str == "c";
});
Куди предмет буде вилучено, якщо item.str == "c"
- update2 -
Було б непогано, якби умови індексу також могли працювати.
Напр.
ar = [ {num:1, str:"a"}, {num:2, str:"b"}, {num:3, str:"c"} ];
ar.removeIf( function(item, idx) {
return idx == 2;
});