JS的StringBuffer类的实现及使用
JAVA中有一个StringBuffer类,js中却没有下面来自己实现一个简单的js的StringBuffer类。
//创建一个StringBuffer类 ,此类有两个方法:一个是append方法一个是toString方法
function StringBuffer() { this.__strings__ = []; }; StringBuffer.prototype.append = function(str) { this.__strings__.push(str); }; StringBuffer.prototype.toString = function() { return this.__strings__.join(''); };
StringBuffer的使用:
- //此实例的主要是用来拼接字符串
function GnComCard(companymsg) { var buffer = new StringBuffer();//声明一个对象 buffer.append('<li>');//追加字符串,下同 buffer.append('<div class="com_photo"><a href="#" title="用户头像"><img class="userPhoto" src="'); buffer.append(companymsg.userPhoto); buffer.append('"></img></a></div>'); buffer.append('<div class="com_msg">'); buffer.append('<div><a class="com_comname">'+ companymsg.companyMasterName+ '</a> <span class="com_time">' + FormatDate(companymsg.crtime) + '</span></div>'); buffer.append('</div><div class="news">'); if (companymsg.newsId != null) { buffer.append('<a href="'+companymsg.newsId+'" title="新闻动态" class="com_newsname">'+ companymsg.newsTitle + '</a>'); } else { buffer.append('<a href="javascript:void(0)" class="com_newsname">'+ companymsg.newsTitle + '</a>'); } if (companymsg.newsContent != null) { buffer.append('<div class="com_sh"><span class="toggle">>>展开</span></div>'); buffer.append('<div class="com_newscontent">'+ companymsg.newsContent + '</div>'); } buffer.append('</div>'); buffer.append('<div class="comment"><a href="javascript:void(0)" style="float:left" title="追踪公司"><span class="track"></span></a><input type="text"></input></div>'); buffer.append('</div></li>'); return buffer.toString();//拼接成一个字符串 }