JavaScriptでStringBuffer。

 Web アプリケーションのパフォーマンスを改善する

 上記の記事を読んでいたら実装例が紹介されていて、なるほど、面白い、ボクにもできそうと思ったので導入してみた。多分うちくらいの規模だと大した恩恵は無いと思うけどね。


var StringBuffer = function(string) {
    this.buffer = [];

    this.append = function(string) {
        this.buffer.push(string);
        return this;
    };

    this.toString = function() {
        return this.buffer.join('');
    };

    if (string) {
        this.append(string);
    }
};


 内部に配列を作って保持しておいて、出力する時に一気に繋げる感じっすね。


var foo = "ham";
var aString = new StringBuffer("Spam").append(foo).append("eggs").toString();

> aString
"Spamhameggs"

 こんな風に使う。

 こういうちょっとした事で最適化されたり使いやすくなったりするネタ大好き!