Problème :
Vous disposez d'un tableau d'objets immobiliers. Vous devez filtrer le tableau pour renvoyer un sous-ensemble d'objets « maison » en fonction de critères spécifiques, tels que le prix, la superficie en pieds carrés, le nombre de chambres et le nombre de salles de bains.
Solution :
Pour filtrer un tableau d'objets en fonction d'attributs, vous pouvez utiliser la méthode Array.prototype.filter. Cette méthode prend une fonction de rappel comme argument, qui est utilisée pour déterminer si chaque élément du tableau doit être inclus dans le tableau filtré.
Dans votre cas, vous pouvez créer une fonction de rappel qui vérifie si chaque maison l'objet répond à tous vos critères. Voici un exemple :
let newArray = homes.filter(function (el) { return el.price <= 1000 && el.sqft >= 500 && el.num_of_beds >= 2 && el.num_of_baths >= 2.5; });
Cette fonction de rappel vérifie si l'attribut price est inférieur ou égal à 1000, si l'attribut sqft est supérieur ou égal à 500, si l'attribut num_of_beds est supérieur ou égal à 2, et si l'attribut num_of_baths est supérieur ou égal à 2,5. Si toutes ces conditions sont remplies, l'élément est inclus dans le tableau filtré.
Notez que la syntaxe ne doit pas nécessairement être exactement comme l'exemple que vous avez fourni. L'exemple ci-dessus utilise l'opérateur && pour combiner les conditions, mais vous pouvez également utiliser l'opérateur &. De plus, vous pouvez utiliser des fonctions fléchées pour simplifier la fonction de rappel.
Voici un exemple en direct :
<script> var obj = { '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 newArray = obj.homes.filter(function (el) { return el.price <= 1000 && el.sqft >= 500 && el.num_of_beds >= 2 && el.num_of_baths >= 2.5; }); console.log(newArray); </script>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!