J'ai le tableau JavaScript suivant d'objets immobiliers :
var json = { 'homes': [{ "home_id": "1", "price": "925", "sqft": "1100", "num_of_beds": "2", "num_of_baths": "2.0", }, { "home_id": "2", "price": "1425", "sqft": "1900", "num_of_beds": "4", "num_of_baths": "2.5", }, // ... (more homes) ... ] } var xmlhttp = eval('(' + json + ')'); homes = xmlhttp.homes;
Ce que je veux faire, c'est pouvoir effectuer un filtre sur les objets pour renvoyer un sous-ensemble des objets "home".
Par exemple, je souhaite pouvoir filtrer en fonction de :price
、sqft
、num_of_beds
和num_of_baths
.
Comment faire quelque chose comme le pseudocode suivant en JavaScript :
var newArray = homes.filter( price <= 1000 & sqft >= 500 & num_of_beds >=2 & num_of_baths >= 2.5 );
Veuillez noter que la syntaxe ne doit pas nécessairement être exactement la même que ci-dessus. C'est juste un exemple.
Je suis surpris que personne n'ait posté de réponse d'une seule ligne :
...juste pour vous faciliter la lecture :
Vous pouvez utiliser la méthode
数组.prototype.filter
:Exemple :