Статьи

Совет: полное понимание $ .grep ()

Метод jQuery $ .grep () — это один из тех методов, который используется не так часто, как следовало бы. Это в основном потому, что, пока вы не поймете, что именно это делает, это может быть немного запутанным. Надеюсь, этот быстрый совет по видео объяснит, когда и почему вы будете его использовать.

По своей сути, $ .grep — это простой маленький метод, который фильтрует массив и отбирает все элементы, которые не проходят определенный элемент управления. Например, если у нас есть массив чисел 1-10, и мы хотим отфильтровать любые значения ниже 5, мы можем сделать:

1
2
3
4
5
6
7
8
9
var nums = ‘1,2,3,4,5,6,7,8,9,10’.split(‘,’);
 
nums = $.grep(nums, function(num, index) {
  // num = the current value for the item in the array
  // index = the index of the item in the array
  return num > 5;
});
 
console.log(nums) // 6,7,8,9,10

Посмотреть демо-версию на JSBin.

Или, скажем, у вас есть массив чисел и строк, и вы хотите отсеять все строки, оставив только массив чисел. Одним из способов решения этой задачи является использование $ .grep.

1
2
3
4
5
6
7
8
9
var arr = ‘1,2,3,4,five,six,seven,8,9,ten’.split(‘,’);
 
arr = $.grep(arr, function(item, index) {
  // simply find if the current item, when passed to the isNaN,
  // returns true or false.
  return !isNaN(item);
});
 
console.log(arr);

Посмотреть демо-версию на JSBin.

Для дальнейшего обучения обязательно обратитесь к API jQuery.

  • Подпишитесь на нас в Твиттере или подпишитесь на ленту Nettuts + RSS для получения лучших учебных материалов по веб-разработке.