이 기사의 예에서는 자바스크립트 텍스트 템플릿의 사용법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 내용은 다음과 같습니다.
Prism.js 알고리즘을 기반으로 작성한 작은 함수입니다. 프로그래머로서 예제를 보고 나면 몇 초 안에 이해할 수 있을 것입니다.
문자열 템플릿 엔진 클래스:
/*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(""); } }
사용방법:
var str = new StringTemplate().format("你好%{userName }, 欢迎再次登陆%{systemName}",{userName: "小明", systemName: "jb51"}); //str="你好小明, 欢迎再次登陆jb51";
이 기사가 모든 사람의 JavaScript 프로그래밍 설계에 도움이 되기를 바랍니다.