<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 Transitional//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" /> <br> <タイトル></タイトル> <br><本文> <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>}; <br> StringBuffer.prototype.toString = function(){ <br>return this.__strings__.join(''); <br><br>;文字列のスプライシングを実装する StringBuffer クラス<br>// 文字列の連結が完了するたびにステップ 2 が実行されます <br>//実際、このコードによってバックグラウンドで実行されるステップは次のとおりです: <br>/** //* <br>1. 結果を保存する文字列を作成します <br>2. 各文字列を結果内の適切な場所にコピーします <br>*/ <br>var バッファ = new StringBuffer() ; <br>buffer.append('world'); ); <br><br>//StringBuffer を使用すると、時間を 50% ~ 66% 節約できます<br>//--> <br></html> <br> </div>