The NoteBook of EricKong

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            611 Posts :: 1 Stories :: 190 Comments :: 0 Trackbacks
          JavaScript中的String是只讀的,所以每次對String變量的操作都會在內存中產生一個零時變量,如果要對字符串進行大量的重復操作,性能和效率都會很低下,因此常用數組的方法操作字符串,即先把字符串都存儲在數組中,然后使用join()方法連接字符串。
          當然可以把這種方法再演變一下,在JavaScript中模擬StringBuffer類。
          <script type="text/javascript">
              function StringBuffer(){
                  this._Strings = new Array();
              }
              StringBuffer.prototype = {
                  append : function(str){
                      this._Strings.push(str);
                  },
                  toString : function(){
                      return this._Strings.join(",");
                  }
              }
              
              var myvar = new StringBuffer();
              myvar.append("a");
              myvar.append("b");
              myvar.append("c");
              myvar.append("d");
              myvar.append("e");
              alert(myvar.toString());
          </script>
          可以把這種方法和原始的直接操作String的方法進行對比,會發現效率提高了很多。(注意:要在IE里面進行比較,在firefox里的效率是差不多的)
          posted on 2013-10-08 09:50 Eric_jiang 閱讀(371) 評論(0)  編輯  收藏 所屬分類: JavaScript
          主站蜘蛛池模板: 中阳县| 故城县| 称多县| 渭南市| 崇阳县| 固阳县| 安宁市| 海宁市| 隆化县| 顺义区| 青岛市| 南京市| 紫金县| 花莲县| 德兴市| 措美县| 舟山市| 兴化市| 乐亭县| 都昌县| 兴仁县| 垣曲县| 来凤县| 乌审旗| 密云县| 隆回县| 湖口县| 民乐县| 鄯善县| 建水县| 恩施市| 竹北市| 应城市| 塔河县| 大荔县| 新晃| 闸北区| 中卫市| 棋牌| 辉县市| 纳雍县|