首页 > 代码库 > js的StringBuffer类的实现及使用

js的StringBuffer类的实现及使用

<strong>JAVA中有一个StringBuffer类,js中却没有下面来自己实现一个简单的js的StringBuffer类。</strong>

                //创建一个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();//拼接成一个字符串
		}