jQuery: filtrare un array di oggetti con $.grep()

Il metodo $.grep() di jQuery filtra un array e restituisce un nuovo array costituito dagli elementi che soddisfano una data condizione. È possibile utilizzare questo metodo anche per gli array di oggetti.

Sostanzialmente si tratta di testare le proprietà degli oggetti:


var arr = [
	{
	  name: "Foo",
	  bar: 1
	},
	{
	  name: "Baz",
	  bar: 6
	},
	{
	  name: "Test",
	  bar: 8
	}
];

var filtered = $.grep( arr, function( item ) {
	return ( item.bar % 2 == 0 );
};

// [ { name: "Baz", bar: 6 }, { name: "Test", bar: 8 } ]

Questa tecnica si rivela molto utile quando dobbiamo filtrare i risultati di una richiesta AJAX in formato JSON.

Torna su