1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
1、JS格式化功能 <script> /*
1. 调用对象方法时,通过调用类的prototype中的方法,可以扩展
2. 正则表达式 /\w+/g
3. 字符串replace
''.replace('alex','sb');
''.replace(/\w+/,'sb');
''.replace(/\w+/g,'sb');
''.replace(/(\w+)/g,function(k,kk){return 11;});
*/
String.prototype.Format = function (arg){
/*
this,当前字符串 "i am {name1}, age is {age9}"
arg,Format方法传入的参数 {name:'alex',age:18}
return,格式化之后获取的新内容 i am alex, age is 18
*/
var temp = this .replace(/\{(\w+)\}/g, function (k,kk){
return arg[kk];
});
return temp;
};
|
2、利用以上格式化功能和递归实现评论树
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
function commentTree(commentList){
var comment_str = "<div class='comment'>" ;
$.each(commentList, function (k,row){
// var temp = "<div class='content'>"+ row.content +"</div>";
var temp = "<div class='content'>{content}</div>" .Format({content:row.content});
comment_str += temp;
if (row.child.length>0){
comment_str += commentTree(row.child);
}
});
comment_str += '</div>' ;
return comment_str;
}
|
本文转自 AltBoy 51CTO博客,原文链接:http://blog.51cto.com/altboy/1949498