Récapitulatif - Système solaire
Fait partie de la section Logique & Flux du Journey JavaScript de Coddy — leçon 27 sur 65.
Défi
FacileCréez une fonction nommée analyzeSolarSystem qui prend un argument, une chaîne JSON solarSystemData. La chaîne JSON contient des informations sur les planètes de notre système solaire. Chaque planète possède les propriétés suivantes :
name(chaîne de caractères)type(chaîne de caractères : "rocky" ou "gas")numberOfMoons(nombre)discoveredIn(nombre, année)surfaceTemperature(objet avec min et max en Celsius)hasRings(booléen)
Votre tâche :
- Analysez la chaîne JSON pour la transformer en objet.
- Pour chaque planète :
- Ajoutez une propriété
classificationbasée sur ces règles :- S'il s'agit d'une planète rocheuse et que
surfaceTemperature.max< 50°C :Potentially Habitable - S'il s'agit d'une planète rocheuse et que
surfaceTemperature.max>= 50°C :Extreme Environment - S'il s'agit d'une planète gazeuse et que
numberOfMoons> 10 :Complex System - S'il s'agit d'une planète gazeuse et que
numberOfMoons<= 10 :Simple Gas Giant
- S'il s'agit d'une planète rocheuse et que
- Ajoutez une propriété
ageOfDiscoveryqui calcule il y a combien d'années la planète a été découverte (à partir de l'année2010) - Si la planète a des anneaux et plus de 5 lunes, ajoutez une propriété
specialFeatureavec la valeurRing System with Rich Moon Population
- Ajoutez une propriété
- Retournez l'objet modifié sous forme de chaîne JSON.
Exemple d'entrée :
{
"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
}
]
}Essayez vous-même
function analyzeSolarSystem(solarSystemData) {
// Écrivez le code ici
}
// N'écrivez rien en dehors de la fonctionToutes les leçons de Logique & Flux
1Les chaînes de caractères en profondeur
Fondamentaux des chaînesParcourir les chaînesTemplate LiteralsMéthodes des chaînesRécapitulatif - String Weaver4JSON Partie 2
Itérer sur du JSONJSON imbriquéChaînage optionnel JSONCopie superficielle et profondeRécapitulatif - Magasin de vélosRécapitulatif - Système solaire7Système de gestion de bibliothèque
Présentation du projetAjouter des livres2Tableaux multidimensionnels
Bases des tableaux 2DAccès aux éléments d'un tableau 2DBoucles imbriquées et tableaux 2DRécapitulatif - Tableaux 2DAddition et soustraction de matricesTableaux irréguliers (Jagged Arrays)Tableaux 3D et au-delàModèles courants de tableaux 2DRécapitulatif - Tout sur les tableaux3JSON Partie 1
Qu'est-ce qu'un JSON ?Vérifier si une clé existeMéthodes d'objetL'opérateur Spread Partie 1L'opérateur Spread Partie 2Supprimer des clésRécapitulatif - Manipuler les clés JSON