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 閱讀(366) 評論(0)  編輯  收藏 所屬分類: JavaScript
          主站蜘蛛池模板: 图们市| 苏尼特右旗| 元朗区| 旺苍县| 偃师市| 五指山市| 宣恩县| 辽阳市| 临夏市| 肥东县| 汉川市| 平原县| 长子县| 五大连池市| 师宗县| 湖南省| 冷水江市| 普兰县| 邛崃市| 闽清县| 苗栗市| 潼南县| 长垣县| 砀山县| 苏尼特右旗| 巴里| 青冈县| 贵南县| 佳木斯市| 海口市| 新河县| 潍坊市| 石屏县| 靖江市| 奎屯市| 灵璧县| 井冈山市| 宁阳县| 滕州市| 石台县| 绥芬河市|