Freecodecamp: La variable doit être définie comme 'let' et non 'const' car elle change.

Créé le 3 mars 2017  ·  3Commentaires  ·  Source: freeCodeCamp/freeCodeCamp



Utiliser l'opérateur Spread pour évaluer les tableaux sur place


https://beta.freecodecamp.com/en/challenges/es6/use-the-spread-operator-to-evaluate-arrays-inplace

Description du problème


La variable arr2 est définie comme un const, mais est censée pouvoir être redéfinie dans l'exercice.

Informations sur le navigateur

  • Nom du navigateur, version : Google Chrome, version 56.0.2924.87 (64 bits)
  • Système d'exploitation : OS X El Capitan 10.11.6
  • Mobile, ordinateur de bureau ou tablette : ordinateur de bureau

Solutions potentielles


Il y a 2 options pour résoudre ce défi :

  1. Supprimez les // change code below this line et // change code above this line afin que l'utilisateur puisse ajouter la solution ...arr1 directement dans l'instanciation arr2 .
    La solution serait :
const arr1 = ['JAN', 'FEB', 'MAR', 'APR', 'MAY'];
const arr2 = [...arr1];
  1. Remplacez l'instanciation initiale de arr2 par : let arr2 = [];
    La solution serait :
const arr1 = ['JAN', 'FEB', 'MAR', 'APR', 'MAY'];
let arr2 = [];
// change code below this line
arr2 = [...arr1];
// change code above this line

Ces deux solutions passent actuellement les tests donnés. Je veux nettoyer cet exercice pour qu'il soit plus facile à comprendre pour les utilisateurs.

Commentaire le plus utile

@Ethan-Arrowood Belle prise !

En fait, cela peut être résolu tel quel - mais c'est probablement la manière prévue... :sourire:

copy-contents-of-array

Je suggère que nous changions légèrement le format du challengeSeed pour résoudre ce problème :

const arr1 = ['JAN', 'FEB', 'MAR', 'APR', 'MAY'];

const arr2 = [];  // Change this line.

arr1.push('JUN');
console.log(arr2); // arr2 should not be affected

Tous les 3 commentaires

@Ethan-Arrowood Belle prise !

En fait, cela peut être résolu tel quel - mais c'est probablement la manière prévue... :sourire:

copy-contents-of-array

Je suggère que nous changions légèrement le format du challengeSeed pour résoudre ce problème :

const arr1 = ['JAN', 'FEB', 'MAR', 'APR', 'MAY'];

const arr2 = [];  // Change this line.

arr1.push('JUN');
console.log(arr2); // arr2 should not be affected

Et je pense que nous devrions ajouter l'astuce pour utiliser la fonction .push(). Ou suggérez d'utiliser quelque chose de https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array .
Je vais aller de l'avant et faire ce changement ce soir.

@Ethan-Arrowood, nous supprimons les liens MDN au profit d'une fonction d'astuces pour les défis plutôt que de simplement pointer vers une ressource que les utilisateurs peuvent trouver un peu intimidante lors de l'apprentissage.

Néanmoins, merci beaucoup pour le problème et vos contributions.

Cette page vous a été utile?
0 / 5 - 0 notes