Question du test Node.js

Donné la classe ES2015 et le code suivant, qui sera en possession de l'anneau à la fin de l'exécution?

Difficile

Considérant la classe ES2015 suivante :

class Hobbit {
  static setRingOwner(to) {
    Hobbit.ringOwner = to;
  }
  constructor(name) {
    this.name = name;
  }
  giveRing(to) {
    if (Hobbit.ringOwner !== this) {
      return console.error(`Sorry ${this.name} but you do not have the ring.`);
    }
    Hobbit.setRingOwner(to);
  }
}

Et le code suivant :

let bilbo  = new Hobbit('Bilbo Baggins');
let frodo  = new Hobbit('Frodo Baggins');
let sam    = new Hobbit('Samwise Gamgee');
let merry  = new Hobbit('Meriadoc Brandybuck');
let pippin = new Hobbit('Peregrin Took');

Hobbit.setRingOwner(bilbo);
bilbo.giveRing(frodo);
Hobbit.setRingOwner(sam);
sam.giveRing(bilbo);
frodo.giveRing(merry);
Hobbit.setRingOwner(pippin);
merry.giveRing(frodo);

À la fin de l'exécution, qui des 5 personnages sera en possession de l'anneau ?

Auteur: Jean-marie CléryStatut : PubliéeQuestion passée 835 fois
Modifier
1
Évaluations de la communautéPersonne n'a encore évalué cette question, soyez le premier !