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
          主站蜘蛛池模板: 南木林县| 丹江口市| 渭源县| 南丹县| 海淀区| 平安县| 黄石市| 锡林郭勒盟| 长治县| 黎平县| 尚义县| 曲沃县| 抚远县| 建宁县| 栾川县| 玉林市| 桂平市| 崇左市| 巴中市| 东兴市| 万载县| 田林县| 东莞市| 分宜县| 商都县| 平利县| 凤凰县| 舟山市| 舒兰市| 安宁市| 昭平县| 普洱| 台州市| 凤山市| 嵩明县| 秦安县| 义马市| 武宣县| 双桥区| 太白县| 甘德县|