<html>
<head>
    <title>text/html demo</title>
</head>
<style type="text/css">
.template{
    border-bottom: 1px solid black;
}
</style>
<body>
    <div id="container"></div>
<!-- 模板 -->
<script type="text/html" id="template">
    <div class="template">名字:{{name}}</div>    
    <div class="template">年龄:{{age}}</div>    
</script>
<script type="text/javascript">
var Person = function(name, age){
    this.name = name;
    this.age = age;
}
var persons = [new Person(‘lay‘, 23), new Person(‘marry‘, 24)]
var render = function(html, data){
    if (data instanceof Array) {
        var tpl = html;
        html = "";
        for (var i = 0; i < data.length; i++) {
            var item = data[i];
            var template = tpl;
            var newHtml = getHtml(template, item);
            html  += newHtml;
        };
    } else if (typeof(data) == ‘object‘ ) {
        html = getHtml(html, data);
    };
    
    return html;
}
var getHtml = function(html, data){
        var arr = html.match(/{{[a-zA-Z0-9]+}}/g);
        for (var i = 0; i < arr.length; i++) {
            var item = arr[i];
            var fieldName = item.replace(/{{/g, ‘‘).replace(/}}/g, ‘‘);
            var value = data[fieldName];
            html = html.replace(item,value)
        };
    return html;
}
var template = document.getElementById("template");
var container = document.getElementById("container");
container.innerHTML = render(template.innerHTML, persons);
</script>
</body>
</html>