资讯专栏INFORMATION COLUMN

17 行代码实现的简易 Javascript 字符串模板

yacheng / 2661人阅读

摘要:要求不需要有控制流成分如循环条件等等,只要有变量替换功能即可级联的变量也可以展开被转义的的分隔符和不应该被渲染,分隔符与变量之间允许有空白字符例子,实现先写下函数的框架显然,要做的第一件事便是匹配模板中的占位符。

首发于我的博客 转载请注明出处

这是源于两年前,当我在做人生中第一个真正意义上的网站时遇到的一个问题

该网站采用前后端分离的方式,由后端的 REST 接口返回 JSON 数据,再由前端渲染到页面上。

同许多初学 Javascript 的菜鸟一样,起初,我也是采用拼接字符串的形式,将 JSON 数据嵌入 HTML 中。开始时代码量较少,暂时还可以接受。但当页面结构复杂起来后,其弱点开始变得无法忍受起来:

书写不连贯。每写一个变量就要断一下,插入一个 +"。十分容易出错。

无法重用。HTML 片段都是离散化的数据,难以对其中重复的部分进行提取。

无法很好地利用