var _html = template
.replace('{{index}}',s)
.replace('{{img}}',data[s].img)
.replace('{{caption}}',data[s].caption)
.replace('{{desc}}',data[s].desc);
这个连续的 .replace ,无法理解呀!
replace是字符串方法,可以连用。跟jQuery里面的对象在一行里面加多个方法性质一样的。
replace('{{index}}',s)
.replace('{{img}}',data[s].img)
.replace('{{caption}}',data[s].caption)
.replace('{{desc}}',data[s].desc);
这个是写在for in代码块里面的。for(var s in data){}
表示要用s来遍历data这个数组对象
s就是索引,
data[s]表示data数组索引为s下的这个对象,可以调用这个对象里的任意属性,在这里data[s]里面有img/caption/desc这三种属性
'{{img}}', '{{caption}}', '{{desc}}'是需要替换的字符串。