Maison >interface Web >js tutoriel >Exemples d'utilisation de modèles de texte JavaScript_compétences Javascript

Exemples d'utilisation de modèles de texte JavaScript_compétences Javascript

WBOY
WBOYoriginal
2016-05-16 15:48:001204parcourir

L'exemple de cet article décrit l'utilisation d'un modèle de texte javascript. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :

Il s'agit d'une petite fonction que j'ai écrite sur la base de l'algorithme Prism.js. Il n'y a pas grand chose à dire. En tant que programmeur, vous devriez la comprendre en quelques secondes après avoir regardé l'exemple.

Classe du moteur de modèle de chaîne :

/*class*/StringTemplate = function (
/* Optional {patt: RegExp, clPatt: RegExp}*/pattern) {
  if (!!pattern) {
    this.patt = pattern.patt;
    this.clPatt = pattern.clPatt;
  } else {
    this.patt = /%\{\s*[\w\-]+\s*\}/g;
    this.clPatt = /(^%\{\s*)|(\s*\}$)/g;
  }
  this.format = function(val, map) {
    var ls = [];
    var res;
    var prevEnd = 0;
    while ((res = this.patt.exec(val)) != null) {
      var va = res[0];
      var start = val.substr(prevEnd, res.index - prevEnd);
      prevEnd = res.index + va.length;
      ls.push(start);
      var vac = va.replace(this.clPatt, "");
      ls.push(map[vac]);
    }
    ls.push(val.substr(prevEnd, val.length));
    return ls.join("");
  }
}

Comment utiliser :

var str = new StringTemplate().format("你好%{userName }, 欢迎再次登陆%{systemName}",{userName: "小明", systemName: "jb51"});
//str="你好小明, 欢迎再次登陆jb51";

J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn