jQuery中$.map
和$.grep
有什麼區別?
我想盡可能簡單的回答。
jQuery中$.map
和$.grep
有什麼區別?
我想盡可能簡單的回答。
我會假定你的意思是$.grep
和$.map
。不同之處在於,我們使用$.grep
來過濾數組,而我們使用$.map
將函數應用於數組中的每個項目。
這是一個更好的解釋比我可以做:
http://onwebdev.blogspot.com/2011/03/jquery-grep-and-map-example-and-syntax.html
$.map
方法可以作爲一個迭代器,而是意在操縱數組並返回一個新的數組。
var items = ['A','B','C','A'];
var items = $.map(items, function(item) {
if (item == 'A')
return null;
return item;
});
items are now new array。 ['B','C']
或
var items = $.map(items, function(item) {
if (item == 'A')
return 'A'+'B';
return item;
});
輸出將被['AB', 'B', 'C', 'AB']
$.grep
用於過濾
var items = $.grep(items, function(item) {
return item != 'A';
});
項是現在['B','C']
var items = $.grep(items, function(item) {
if (item == 'A')
return 'A'+'B';
return item;
})
將返回['A', 'B', 'C', 'A']
因爲它不會產生新的東西 - 它降低了現有的。
謝謝@biggs – tito11 2011-06-05 19:24:37
過濾函數可能是我們可以在'map'中應用的函數,因此我們可以使用map或grep – 2017-08-20 08:56:24