블로그 이미지
플래시 개발자랍니다... 하지만 여긴 플래시 전문 블로그가 아닌 그냥 개인 블로그랍니다
미나토

Recent Comment

calendar

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
  • 40,987total
  • 8today
  • 22yesterday
2009/10/14 10:02 Flash Platform



다음과 같은 코드로 속도 테스트를 해보자


var index:int = - 9999999;

var st:uint = getTimer();

var n:Number;
while(index < 0)
{
n = Number("12345");
index ++;
}

trace(getTimer() - st);

///////////////
1204


var index:int = - 9999999;

var st:uint = getTimer();

var n:Number;
while(index < 0)
{
n = parseFloat("12345");
index ++;
}

trace(getTimer() - st);

//////////////////////
2453


결과를 놓고 보면 Number 가 parseFloat 에 비해 두배 정도 빠른 속도를 보이기에 무조건 Number 타입을 쓰는 것이 좋아 보이지만 다음과 같은 차이가 있다


trace(Number(""))
////////////////
0;

trace(parseFloat(""))
///////////////
NaN;



이유는 Number 함수가(Number class 가 아니다) 다음과 같은 반환값을 가지기 때문이다.

Number

입력 유형/값예제반환값
undefined Number(undefined) NaN
null Number(null) 0
true Number(true) 1
false Number(false) 0
NaN Number(NaN) NaN
빈 문자열 Number("") 0
숫자로 변환되는 문자열 Number("5") 숫자(예: 5)
숫자로 변환되지 않는 문자열 Number("5a") NaN





요컨데 결론은.....




Number 함수로 Number 타입 변환을 하면 속도가 두배로 빨라지지만 상황에 맞게 쓰자...




크리에이티브 커먼즈 라이선스
Creative Commons License
posted by 미나토
 <PREV 1 ... 33 34 35 36 37 38 39 40 41 ... 208    NEXT>