¿Cuál es la diferencia entre $.map
y $.grep
en jQuery?
Quiero una respuesta simple en la medida de lo posible.
¿Cuál es la diferencia entre $.map
y $.grep
en jQuery?
Quiero una respuesta simple en la medida de lo posible.
Supongo que quiere decir $.grep
y $.map
. La diferencia es que usamos $.grep
para filtrar una matriz mientras usamos $.map
para aplicar una función a cada elemento de la matriz.
Aquí es una explicación mucho mejor de lo que puedo hacer:
http://onwebdev.blogspot.com/2011/03/jquery-grep-and-map-example-and-syntax.html
$.map
método puede ser utilizado como un iterador, pero está destinado a manipular la matriz y devolver una nueva matriz.
var items = ['A','B','C','A'];
var items = $.map(items, function(item) {
if (item == 'A')
return null;
return item;
});
artículos ahora es una nueva matriz. ['B','C']
o
var items = $.map(items, function(item) {
if (item == 'A')
return 'A'+'B';
return item;
});
salida será ['AB', 'B', 'C', 'AB']
$.grep
se utiliza para filtrar
var items = $.grep(items, function(item) {
return item != 'A';
});
artículos es ahora ['B','C']
sin embargo
var items = $.grep(items, function(item) {
if (item == 'A')
return 'A'+'B';
return item;
})
volverá ['A', 'B', 'C', 'A']
ya que no está produciendo cosas nuevas - que reduce el vigente.
gracias @biggs – tito11
la función de filtro podría ser la función que podríamos aplicar en el 'mapa' para que pudiéramos usar map o grep –