Objects (Objets)
Last updated
Last updated
Les blocs Objet s'associent bien avec les composants API Web, Carte et Capteur d'emplacement qui envoient souvent des données au format objet. Le composant Feuille de calcul nécessite également que les données soient au format objet pour pouvoir être téléchargées en tant que ligne.
Vous pouvez utiliser le bloc suivant pour créer un nouvel objet. Les objets peuvent être téléchargés sur votre DB Firebase comme valeur d'une variable cloud, ou ils peuvent être téléchargés vers une DB Airtable comme une ligne d'objet
Vous pouvez cliquer sur l'icône d'engrenage pour ajouter des propriétés à votre objet :
Parfois, vous voulez convertir entre JSON (JavaScript Object Notation) et Objets. Si une API renvoie une valeur JSON, vous pouvez la convertir en objet pour l'utiliser avec des blocs d'objets. Utiliser le cloc get object from JSON
:
De même, vous pouvez convertir un objet en JSON pour effectuer un POST d'API, ou définir des en-têtes ou des paramètres de requête pour votre appel d'API. Vous devez utiliser le bloc generate JSON from Object
:
Vous pouvez utiliser le bloc get property
pour lire la valeur de la propriété d'un objet. Si l'objet n'a pas de propriété portant ce nom, il retournera undefined
Vous pouvez utiliser le bloc get Object properties of
pour renvoyer les noms des propriétés d'un objet.
Ce bloc renvoie une liste de noms de propriétés. Cette liste peut être utilisée avec les blocs de type liste.
Avec le bloc de set property
, vous pouvez modifier la valeur d'une seule propriété d'un objet.
Vous pouvez utiliser des blocs d'objets lorsque vous faites des appels à une API..
Often, when retrieving data from an API like Weather Underground, you will get a large data dump in JSON format like shown below.
Souvent, lorsque vous récupérez des données à partir d'une API telle que Weather Underground, vous obtenez une grande décharge de données au format JSON, comme indiqué ci-dessous.
{ "response": { "version": "0.1", "termsofService": "http://www.wunderground.com/weather/api/d/terms.html", "features": { "conditions": 1 } }, "current_observation": { "image": { "url": "http://icons-ak.wxug.com/graphics/wu2/logo_130x80.png", "title": "Weather Underground", "link": "http://www.wunderground.com" }, "display_location": { "full": "San Francisco, CA", "city": "San Francisco", "state": "CA", "state_name": "California", "country": "US", "country_iso3166": "US", "zip": "94101", "latitude": "37.77500916", "longitude": "-122.41825867", "elevation": "47.00000000" }, "observation_location": { "full": "SOMA - Near Van Ness, San Francisco, California", "city": "SOMA - Near Van Ness, San Francisco", "state": "California", "country": "US", "country_iso3166": "US", "latitude": "37.773285", "longitude": "-122.417725", "elevation": "49 ft" }, "estimated": {}, "station_id": "KCASANFR58", "observation_time": "Last Updated on June 27, 5:27 PM PDT", "observation_time_rfc822": "Wed, 27 Jun 2012 17:27:13 -0700", "observation_epoch": "1340843233", "local_time_rfc822": "Wed, 27 Jun 2012 17:27:14 -0700", "local_epoch": "1340843234", "local_tz_short": "PDT", "local_tz_long": "America/Los_Angeles", "local_tz_offset": "-0700", "weather": "Partly Cloudy", "temperature_string": "66.3 F (19.1 C)", "temp_f": 66.3, "temp_c": 19.1, "relative_humidity": "65%", "wind_string": "From the NNW at 22.0 MPH Gusting to 28.0 MPH", "wind_dir": "NNW", "wind_degrees": 346, "wind_mph": 22.0, "wind_gust_mph": "28.0", "wind_kph": 35.4, "wind_gust_kph": "45.1", "pressure_mb": "1013", "pressure_in": "29.93", "pressure_trend": "+", "dewpoint_string": "54 F (12 C)", "dewpoint_f": 54, "dewpoint_c": 12, "heat_index_string": "NA", "heat_index_f": "NA", "heat_index_c": "NA", "windchill_string": "NA", "windchill_f": "NA", "windchill_c": "NA", "feelslike_string": "66.3 F (19.1 C)", "feelslike_f": "66.3", "feelslike_c": "19.1", "visibility_mi": "10.0", "visibility_km": "16.1", "solarradiation": "", "UV": "5", "precip_1hr_string": "0.00 in ( 0 mm)", "precip_1hr_in": "0.00", "precip_1hr_metric": " 0", "precip_today_string": "0.00 in (0 mm)", "precip_today_in": "0.00", "precip_today_metric": "0", "icon": "partlycloudy", "icon_url": "http://icons-ak.wxug.com/i/c/k/partlycloudy.gif", "forecast_url": "http://www.wunderground.com/US/CA/San_Francisco.html", "history_url": "http://www.wunderground.com/history/airport/KCASANFR58/2012/6/27/DailyHistory.html", "ob_url": "http://www.wunderground.com/cgi-bin/findweather/getForecast?query=37.773285,-122.417725" } }
Tu peux juste vouloir sortir un attribut (comme temp_f ou la température en Fahrenheit). Pour ce faire, vous devrez utiliser les blocs d'objets ci-dessous :
Les composants du Capteur d'Emplacement renvoient un objet de latitude, de longitude et d'emplacement et il n'est pas toujours évident de savoir quels attributs sont disponibles. Une façon de résoudre le problème est d'imprimer le JSON de l'objet comme ci-dessous
Cela donnera le résultat suivant sur votre application.