1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
|
var json =
[
{
"id": 1,
"parcelles": [
"BE0152",
"AO0559",
"AO0560"
]
},
{
"id": 2,
"parcelles": [
"AP0055"
]
},
{
"id": 3,
"parcelles": [
"BE0208",
"BE0290",
"BE0309"
]
},
{
"id": 4,
"parcelles": [
"BE0152",
"BE0151"
]
}
]
function is_all_items_in_parcelles(parcelles, items) {
for (let item of items) {
if (!parcelles.includes(item)) {
console.warn(`item: ${item} non trouvé dans [${parcelles}]`);
return false
}
console.log(`item: ${item} trouvé dans [${parcelles}]`);
}
return true
}
function filter1(json, id, valeurs) {
for (var obj of json) {
if (obj.id == id) {
// console.log(`un objet d'ID ${id} a été trouvé :`, obj);
if (is_all_items_in_parcelles(obj.parcelles, valeurs))
return obj
else return false
}
}
}
// Exemples :
console.log("************* exemple 1 *************");
var valeurs = ["BE0152", "BE0153"]
var id = 3
var res = filter1(json, id, valeurs)
if (res) console.log("l'objet trouvé est", res);
else console.log("Aucun objet trouvé");
// ------------------
console.log("************* exemple 2 *************");
valeurs = ["BE0208", "BE0290", "BE0309"]
id = 3
res = filter1(json, id, valeurs)
if (res) console.log("l'objet trouvé est", res);
else console.log("Aucun objet trouvé");
// ------------------
console.log("************* exemple 3 *************");
valeurs = ["BE0151", "BE0152", "BE0309"]
id = 4
res = filter1(json, id, valeurs)
if (res) console.log("l'objet trouvé est", res);
else console.log("Aucun objet trouvé"); |
Partager