14-讨论
4.3.3 讨论
本秘诀使用 $.grep() 方法过滤 months 数组,使其只包含以大写字母 J 开始的条目。 $.grep 方法返回过滤后的数组。开发人员定义的回调方法有两个参数,返回布尔值 true 表示保留元素,返回 false 则删除元素。第一个参数是数组元素(本例中是月份)的值,第二个参数是 $.grep() 方法已经循环的次数。所以,如果你想每隔一个月份删除相应元素,可以测试条件 (i % 2)== 0 ,该条件返回 i/2 的余数。( % 是取模操作符,返回除法操作的余数。所以当 i=4时 ,除于2的余数为0)。
(function($) {
$(document).ready(function() {
var months = [ 'January', 'February', 'March', 'April', 'May',
'June', 'July', 'August', 'September', 'October',
'November', 'December'];
months = $.grep(months, function(value, i) {
return ( i % 2 ) == 0;
});
$('#months').html( '<li>' + months.join('</li><li>') + '</li>' );
});
})(jQuery);