Simple Underscore Template

by Adrien Joly

HTML

<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.5.2/underscore-min.js"></script>

JavaScript

// TP P - Exercice 1
function bonjour(pMot) {
  var monTemplate = '<p>Bonjour, <%= trou %> !</p>';
  return _.template(monTemplate, {
    trou: pMot
  });
}
alert(bonjour('tout le monde'));

// TP P - Exercice 2
function doubler(pNombre) {
  var monTemplate = '2 * <%= nombre %> = <%= res %>';
  return _.template(monTemplate, {
    nombre: pNombre,
    res: pNombre * 2
  });
}
alert(doubler(10));

// TP P - Exercice 3
function people(pNombre){
  var mot = '';
  if (pNombre > 1) {
    mot = 'personnes';
  } else {
    mot = 'personne';
  }
  var templ = '<%= nb %> <%= plur %>';
  return _.template(templ, {
    nb: pNombre,
    plur: mot
  });
}
alert(people(1));

// TP P - Exercice 4
// repeter(3) => répétition1 répétition2 répétition3
function repeter(pNombre) {
  var result = '';
  var monTemplate = 'répétition<%= num %> ';
  for (var i=1; i<=pNombre; ++i) {
    result = result + _.template(monTemplate, {
      num: i
    });
  }
  return result;
}
alert(repeter(3));