L'utilisation de chaque fonction et fonction map dans jquery semble être similaire, mais il y a en fait une petite différence.
Une différence importante est que chacun renvoie le tableau d'origine et ne crée pas de nouveau tableau. La méthode map renverra un nouveau tableau. Si la carte est utilisée inutilement, la mémoire peut être gaspillée.
Par exemple :
var items = [1,2,3,4]; $.each(items, function() { alert('this is ' + this); }); var newItems = $.map(items, function(i) { return i + 1; }); // newItems is [2,3,4,5]
Lors de l'utilisation de chacun, le tableau d'éléments d'origine est modifié, mais lors de l'utilisation de map, les éléments ne sont pas modifiés, mais un nouveau tableau est créé.
Par exemple :
var items = [0,1,2,3,4,5,6,7,8,9]; var itemsLessThanEqualFive = $.map(items, function(i) { // removes all items > 5 if (i > 5) return null; return i; }); // itemsLessThanEqualFive = [0,1,2,3,4,5]
Il en va de même lorsqu'un tableau doit être supprimé, donc les conséquences d'une mauvaise utilisation de chaque carte ou de chaque carte lors de la suppression sont assez graves.