Wiederholung – Sonnensystem
Teil des Abschnitts Logik & Ablauf der JavaScript-Journey von Coddy. Lektion 27 von 65.
Aufgabe
EinfachErstelle eine Funktion namens analyzeSolarSystem, die ein Argument entgegennimmt: einen JSON-String solarSystemData. Der JSON-String enthält Informationen über Planeten in unserem Sonnensystem. Jeder Planet hat die folgenden Eigenschaften:
name(String)type(String: "rocky" oder "gas")numberOfMoons(Zahl)discoveredIn(Zahl, Jahr)surfaceTemperature(Objekt mit Minimum und Maximum in Celsius)hasRings(Boolean)
Deine Aufgabe:
- Wandle den JSON-String in ein Objekt um.
- Für jeden Planeten:
- Füge anhand der folgenden Regeln eine Eigenschaft
classificationhinzu:- Wenn es sich um einen Gesteinsplaneten handelt und
surfaceTemperature.max< 50 °C ist:Potentially Habitable - Wenn es sich um einen Gesteinsplaneten handelt und
surfaceTemperature.max>= 50 °C ist:Extreme Environment - Wenn es sich um einen Gasplaneten handelt und
numberOfMoons> 10 ist:Complex System - Wenn es sich um einen Gasplaneten handelt und
numberOfMoons<= 10 ist:Simple Gas Giant
- Wenn es sich um einen Gesteinsplaneten handelt und
- Füge eine Eigenschaft
ageOfDiscoveryhinzu, die berechnet, vor wie vielen Jahren der Planet entdeckt wurde (ausgehend vom Jahr2010). - Wenn der Planet Ringe und mehr als 5 Monde hat, füge eine Eigenschaft
specialFeaturemit dem WertRing System with Rich Moon Populationhinzu.
- Füge anhand der folgenden Regeln eine Eigenschaft
- Gib das geänderte Objekt als JSON-String zurück.
Beispieleingabe:
{
"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
}
]
}Probier es selbst
function analyzeSolarSystem(solarSystemData) {
// Hier Code schreiben
}
// Schreiben Sie nichts außerhalb der FunktionAlle Lektionen in Logik & Ablauf
1Strings im Detail
Grundlagen von StringsStrings durchlaufenTemplate LiteralsString-MethodenRückblick – String-Weber4JSON Teil 2
JSON durchlaufenVerschachteltes JSONOptionale Verkettung in JSONFlache und tiefe KopieWiederholung – FahrradgeschäftWiederholung – Sonnensystem7Bibliotheksverwaltungssystem
ProjektübersichtBücher hinzufügen2Mehrdimensionale Arrays
Grundlagen von 2D-ArraysZugriff auf Elemente von 2D-ArraysVerschachtelte Schleifen mit 2D-ArraysWiederholung – 2D-ArraysMatrixaddition und -subtraktionZackige Arrays3D-Arrays und darüber hinausHäufige Muster bei 2D-ArraysWiederholung – Alles über Arrays5Mengen – Teil 1
Was ist eine Menge?Mengen durchlaufenEin Element hinzufügenEin Element entfernenPrüfen, ob ein Element vorhanden istGröße und LeerstatusKopieren und LeerenRückblick – Grundlagen von Mengen8Interessante Themen zu Arrays
Destrukturierung von ArraysSpread-Syntax in ArraysDünn besetzte ArraysRückblick – Workshop zu Arrays3JSON Teil 1
Was ist JSON?Prüfen, ob ein Schlüssel vorhanden istObjektmethodenSpread-Operator Teil 1Spread-Operator Teil 2Schlüssel entfernenRückblick – JSON-Schlüssel bearbeitenÜbe selbstständig: Online-JavaScript-Compiler