Menu
Coddy logo textTech

Ripasso - Sistema solare

Fa parte della sezione Logica e flusso del percorso JavaScript di Coddy. Lezione 27 di 65.

challenge icon

Sfida

Facile

Crea una funzione chiamata analyzeSolarSystem che accetti un argomento, una stringa JSON solarSystemData. La stringa JSON contiene informazioni sui pianeti del nostro sistema solare. Ogni pianeta ha le seguenti proprietà:

  • name (stringa)
  • type (stringa: "rocky" o "gas")
  • numberOfMoons (numero)
  • discoveredIn (numero, anno)
  • surfaceTemperature (oggetto con min e max in gradi Celsius)
  • hasRings (booleano)

Il tuo compito:

  1. Analizza la stringa JSON e convertila in un oggetto.
  2. Per ogni pianeta:
    1. Aggiungi una proprietà classification in base alle seguenti regole:
      1. Se è un pianeta roccioso e surfaceTemperature.max < 50°C: Potentially Habitable
      2. Se è un pianeta roccioso e surfaceTemperature.max >= 50°C: Extreme Environment
      3. Se è un pianeta gassoso e numberOfMoons > 10: Complex System
      4. Se è un pianeta gassoso e numberOfMoons <= 10: Simple Gas Giant
    2. Aggiungi una proprietà ageOfDiscovery che calcoli quanti anni fa è stato scoperto il pianeta (a partire dall'anno 2010)
    3. Se il pianeta ha anelli e più di 5 lune, aggiungi una proprietà specialFeature con valore Ring System with Rich Moon Population
  3. Restituisci l'oggetto modificato come stringa JSON.

Esempio di input: 

{
  "planets": [
    {
      "name": "Mars",
      "type": "rocky",
      "numberOfMoons": 2,
      "discoveredIn": -3000,
      "surfaceTemperature": {
        "min": -140,
        "max": 20
      },
      "hasRings": false
    },
    {
      "name": "Saturn",
      "type": "gas",
      "numberOfMoons": 82,
      "discoveredIn": -3000,
      "surfaceTemperature": {
        "min": -178,
        "max": -138
      },
      "hasRings": true
    }
  ]
}

Provalo tu

function analyzeSolarSystem(solarSystemData) {
    // Scrivi il codice qui
}
// Non scrivere nulla al di fuori della funzione

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore JavaScript online