Hluboké slučování objektů v JavaScriptu pomocí Spread, Lodash a Deepmerge

Ahoj Chrisi,promiň, máš pravdu, nevysvětlil jsem to správně, upřesním to -Například: při příjmu dat z koncového bodu API jako objektu JSON s vnořenými poli.Například endpoint aktuálních podmínek počasí, tak v tomto případě, aby bylo možné analyzovat pouze relevantní vlastnosti datového objektu (tj. ne celý objekt, řekněme v tomto případě pouze pole teplota).

pro ilustraci se to pokusím zesměšnit (moc mě nesuďte, jsem ještě zelený až za ušima 🤓)

"Data": 

takže vzhledem k této odpovědi bych to vyřešil tak, že bych vytvořil funkci, která by kontrolovala:

  • zda jsou data pole nebo objekt.
  • poté data předat funkci parseru, aby analyzovala pouze relevantní pole vlastností dat.

například něco takového:

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", });

teď zpět k mé první otázce z dřívějška, mám pocit, že musí existovat lepší způsob, jak to provést, než natvrdo kódovat hodnoty, které mám zájem analyzovat?

děkuji za dosavadní trpělivost… Doufám, že jsem nebyl příliš složitý na pochopení 😅

.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.