Мне было интересно узнать о различиях между Grep и Filter:
Фильтр:
Сократите набор совпадающих элементов до тех, которые соответствуют селектору, или пройдете проверку функции.
Grep:
Находит элементы массива, удовлетворяющие функции фильтрации. Исходный массив не изменяется.
Хорошо.
поэтому, если я сделаю это в GREP:
var arr = [ 1, 9, 3, 8, 6, 1, 5, 9, 4, 7, 3, 8, 6, 9, 1 ];
myNewArray= jQuery.grep(arr, function(n, i){
return (n != 5 && i > 4);
});
Я также мог:
var arr = [ 1, 9, 3, 8, 6, 1, 5, 9, 4, 7, 3, 8, 6, 9, 1 ];
myNewArray= $(arr).filter( function(n, i){
return (n != 5 && i > 4);
});
В обеих ситуациях я все еще могу получить доступ к исходному массиву ...
так ... в чем разница?
.grep()
это вспомогательный метод для общей обработки массива, хотя.filter()
обычно используется для сужения выбора элементов. Я не думаю, что.grep()
возвращает объект jQuery, и вы не можете связать его (jQuery.fn.grep
не существует).