Hi Chris, désolé, tu as raison je ne me suis pas bien expliqué, laisse-moi être un peu plus précis -Par exemple : lors de la réception de données d’un endpoint API comme un objet JSON avec des tableaux imbriqués.Par exemple, le point de terminaison des conditions météorologiques actuelles, donc dans ce cas, afin d’analyser seulement les propriétés pertinentes de l’objet de données (c’est-à-dire, pas l’objet entier, disons seulement le champ de température dans ce cas).
pour l’illustration, je vais faire de mon mieux pour mocker cela (ne me jugez pas trop fort, je suis encore vert derrière les oreilles 🤓)
"Data":
donc étant donné cette réponse, ce que je ferais pour résoudre cela serait, de créer une fonction qui vérifie :
- si les données sont un tableau ou un objet.
- puis d’alimenter les données à la fonction d’analyse syntaxique afin de n’analyser que les champs de propriété de données pertinents.
par exemple quelque chose comme ceci:
const isArrayOrObject = (jsonData) => { let result = jsonData; if (Array.isArray(result.data)) { return result.data.map((result) => currentConditionsReducer(result)); } else { return currentConditionsReducer(result.data); }}; export const currentConditionsReducer = (result, language) => { return { currentDate: dateFromString(result.DateString, language), weatherPhrase: result.WeatherText, icon: iconUrlResolver(result.WeatherIcon), temperature: result.Temperature.Imperial.Value,};};const dateFromString = (value, language) => { return new Date(value).toLocaleDateString(language, { day: "2-digit", month: "2-digit", year: "numeric", });
pour en revenir à ma première question de tout à l’heure, j’ai l’impression qu’il doit y avoir une meilleure façon d’effectuer ceci que de coder en dur les valeurs que je suis intéressé à analyser?
merci pour votre patience jusqu’à présent… J’espère que je n’étais pas trop difficile à comprendre 😅