JavaScript

Dernière mise à jour : 26/05/2016

Objet en chaîne de caractères

Énoncé

Définir un objet 'member' (membre) avec les attributs 'id' (identifiant), 'name' (nom) et 'grade' et une méthode 'toString' personnalisée. Créer un objet 'team' qui contient des membres. Créer une instance de 'team' et y ajouter des membres. Afficher les membres de 'team' en utilisant la fonction 'toString' de 'member'.

Solution

Fichier "js/script.js"

function member(id, name, grade) {
  this.id       = id;
  this.name     = name;
  this.grade    = grade;
  this.toString = function() {
    return "ID: "+this.id+", Name: "+this.name+", Grade: "+this.grade;
  }
}

function team() {
  this.members  = new Array();
  this.add      = function(member) {
    var index           = this.members.length;
    this.members[index] = member;
    return index;
  }
  this.toString = function() {
    return this.members.join("\n");
  }
}

var myTeam = new team();

myTeam.add(new member(42, "Alice", "ICT C"));
myTeam.add(new member(43, "Abdelhamid", "ICT C"));
myTeam.add(new member(44, "Baya", "ICT C"));
myTeam.add(new member(45, "Firmus", "ICT B"));
myTeam.add(new member(46, "Jean", "ICT C"));
myTeam.add(new member(47, "Badria", "ICT A"));
myTeam.add(new member(48, "Lalla", "ICT C"));
myTeam.add(new member(49, "Souleymane", "ICT B"));

document.writeln(myTeam);

Fichier "index.html"

<!DOCTYPE html>
<html lang="fr">
  <head>
    <meta author="Sébastien Adam">
    <meta charset="UTF-8">
    <meta name="language" content="fr">
    <title>Objet en chaîne de caractères</title>
  </head>
  <body>
    <pre>
<script type="text/javascript" src="js/script.js"></script>
    </pre>
  </body>
</html>