。模板里面有一些占位符,一些特殊的标记
。模板对应约定了处理占位符的正则表达式,处理特殊标记的表达式
。比如把一个XML做的模板按照层级递归,把元素节点,文本节点等组织成一个嵌套的对象,每个节点的属性都获取到,然后作为嵌套对象上面的属性,我们现在有了一个最初的XML模板,和一个经过了第一次处理的和XML对应的对象
。把这个对象进行递归,把每一个节点的属性拿出来处理成一个可以在经过eval处理之后直接运行的函数的静态字符,这个函数主要工作是根据对象上的属性,用DOM提供的方法,创建HTML元素并显示到页面上的父元素底下
。把这些函数的字符串统统生成完成
。现在有了一个XML模板,一个对应的对象,一个对应的函数字符串
。使用new Function(),就可以得到 loader 函数了
。调用 loader 函数就能执行 html 元素的渲染