// La funzione prende in input un array di oggetti JSON e restituisce un nuovo array di oggetti JSON con la struttura richiesta
function mapObjects(list) {
// Creo un nuovo array vuoto
let result = [];
// Itero su ogni elemento dell'array di input
for (let item of list) {
// Creo un nuovo oggetto JSON con le proprietà richieste
let mappedItem = {
"isRental": item.channel === "affitto",
"isForRent": item.category === "stanze",
"rentalType": item.propertyType === "stanza" ? "singleRoom" : "other",
"monthlyPrice": Number(item.features.price.value),
"securityDepositMonths": null, // Non deducibile dal testo
"zone": item.geoInfos.district_name,
"sexRestrictions": "everyone", // Non specificato
"occupationalRestrictions": "everyone", // Non specificato
"lgbtFriendly": false, // Non specificato
"furnished": null, // Non specificato
"availabilityStartDate": null, // Non specificato
"availabilityEndDate": null, // Non specificato
"contractDurationMonths": null, // Non specificato
"hasBalcony": null, // Non specificato
"hasParking": item.features.parkingOffer.available,
"address": item.geoInfos.street + ", " + item.geoInfos.city,
"floorNumber": Number(item.features.level.split("°")[0]),
"rooms": Number(item.features.rooms),
"bathrooms": Number(item.features.bathrooms),
"areaSqMeters": Number(item.features.mq),
"priceIncludesTaxes": null, // Non specificato
"smokingAllowed": null, // Non specificato
"hasAirConditioning": null, // Non specificato
"hasHeating": null, // Non specificato
"hasElevator": null // Non specificato
};
// Aggiungo il nuovo oggetto all'array di risultato
result.push(mappedItem);
}
// Restituisco l'array di risultato
return result;
}
URL:
Funzione per mappare by Bing: