테스트 사이트 - 개발 중인 베타 버전입니다

성능향상을 위한 팁-3

· 15년 전 · 917
많은 문자열의 연결 최소

 문자열 + 문자열 + 문자열 ...    

   → 한번 생성된 문자열은 읽기전용(Readonly)

 

  var str = "";

  for (var i = 0; i < 7000; i++)

  {

      // 단순 문자열 연결 반복

      str += "test_";

  }

 

 

 

 → 실제로는 새로운 String 객체를 생성 후

      추가하는 추가 작업이 발생 (성능저하)

      (C#에서는 StringBuilder 사용..)

 

 

 

 

  function StringBuffer() {
      this.__strings__ = [];
  }

  StringBuffer.prototype.append = function(str) {

      /* javascript에서는 push, pop을 제공

          Stack 또는 Queue 형태 사용가능 */
      this.__strings__.push(str);
  }

  // StringBuffer.prototype.toString = function(delimiter){
  //     return this.__strings__.join(delimiter);
  // }

  var buffer = new StringBuffer();
  for (var i=0;i<7000;i++) {
     
buffer.append("test_");
  }

                                                                                                 

[이 게시물은 관리자님에 의해 2011-10-31 16:57:14 JavaScript에서 이동 됨]

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
12438
12437
12436
12435
12434
12433
12432
12431
12430
12429
12428
12427
12426
12425
12424
12423
12422
12421
12420
12419
12418
12417
12416
12415
12414