<div class="codetitle"> <span><a style="CURSOR: pointer" data="59519" class="copybut" id="copybut59519" onclick="doCopy('code59519')"><u>코드 복사</u></a></span> 코드는 다음과 같습니다.</div> <div class="codebody" id="code59519"> <br><!DOCTYPE html PUBLIC "-//W3C/ /DTD XHTML 1.0 전환//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <br><html xmlns="http://www.w3 .org/ 1999/xhtml"> <br><head> <br><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <br> <title></title> <br><body> <br><script type="text/javascript"< -- <BR>var str = 'hello'; <BR>str = 'world' <BR>//문자열 연결이 완료될 때마다 2~6단계가 실행됩니다. <BR>//실제로 이 코드는 뒤에서 실행되는 단계는 다음과 같습니다. <BR>/**//* <BR>1. 'hello'를 저장할 문자열 생성 <BR> 2. 'world'를 저장할 문자열 생성 <BR> 3. 링크 결과를 저장할 문자열 생성 <BR> 4. 현재 변경 str 값 내용을 결과에 복사합니다 <BR> 5. 'world'를 결과에 복사합니다 <BR> 6. 결과를 가리키도록 str을 업데이트합니다 <BR>*/ <BR><BR>//성능 향상을 위해서는 배열 방식을 사용하여 문자열을 연결하는 것이 가장 좋습니다 <br>/ /StringBuffer 클래스 생성 <br>function StringBuffer() { <BR>this.__strings__ = [] <BR>} <BR>StringBuffer.prototype.append = function(str){ <BR>this.__strings__.push (str); <BR> StringBuffer.prototype.toString = function(){ <BR>return this.__strings__.join('') <BR><BR>//Call 문자열 접합을 구현하는 StringBuffer 클래스<BR>// 문자열 연결이 완료될 때마다 2단계가 실행됩니다. <BR>//사실 이 코드가 뒤에서 수행하는 단계는 다음과 같습니다. <br>/** //* <br>1. 결과를 저장할 문자열을 만듭니다. <BR>2. 각 문자열을 결과의 적절한 위치에 복사합니다. <BR>*/ <BR>var buffer = new StringBuffer() ; <BR>buffer.append('hello') <BR>buffer.append('world') <BR>var result = buffer.toString( ); <BR><BR>//StringBuffer 비유 사용 = 50%~66%의 시간 절약<BR>//-> <br></script> <br></html> <br> </div>