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

성능향상을 위한 팁-3

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

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

   → 한번 생성된 문자열은 읽기전용(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에서 이동 됨]

댓글 작성

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

로그인하기

게시글 목록

번호 제목
12487
12486
380
12484
12483
376
12482
12481
12479
12478
12477
12476
12475
12474
12473
12472
12471
12470
12469
371
12468
12467
12466
12465
12464