状況を表示する場合、JavaScript には StringBuffer クラスはありません。Javascript StringBuffer クラスの実装の主流は、プロトタイプを通じて StringBuffer クラスを構築することです。 StringBuffer.js コードをコピー コードは次のとおりです: function StringBuffer(){ this.content = 新しい配列; } StringBuffer.prototype.append = function( str ){ this.content.push( str ); >} StringBuffer.prototype.toString = function(){ return this.content.join(""); } 次に、テスト ケースを作成します。 TestStringBUffer.html コードをコピー コードは次のとおりです: test script> <br><script> <br>function testStringBuffer(){ <br>var date1 = new Date(); <br>var str; <br>for( var i=0; istr = "text"; <br>var date2 = new Date(); <br>document.writeln("Sting use time:" (date2 - date1) " ms"); <br>var date3 = new Date(); <br>var strBuffer = new StringBuffer(); <br>for(i=0; istrBuffer.append(" text"); <br>} <br>strBuffer.toString(); <br>var date4 = new Date(); <br>document.writeln("<br/>StringBuffer 使用時間:" (date4 - date3) "ms") ; <br> それでは、何が起こるか見てみましょう: IE8: Sting 使用時間:11ms StringBuffer 使用時間:47ms 結果として、StringBuffer は String より効率的ではないだけでなく、はるかに効率が低くなります。もしかして先輩が間違ってたのかな? 他のブラウザで見てみましょう: IE7: Sting 使用時間: 266 ミリ秒 StringBuffer 使用時間: 78 ミリ秒 IE7 における StringBuffer の利点は明らかです。 ご覧のとおり、現在の主流ブラウザでは String クラスの文字列接続が最適化されているため、カスタム StringBuffer クラスよりもパフォーマンスが優れていますが、古いブラウザでは StringBuffer クラスの利点が依然として明らかです。 。具体的には、実際にはブラウザを判断する必要がある。