일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Document Class
- MMOKit
- scaleform3
- autodesk
- watch
- GDC
- as3
- 플래시
- flash player 10
- 클릭
- 형변환
- scaleform4
- 스케일폼
- DataBinding
- Chart
- as3.0
- 태그클라우드
- 강좌
- ApplicationDomain
- addChild
- flash cs3
- 집합의 연산
- scaleform
- as2
- CLIK
- KGC 2013
- 수학정석
- 애드온
- 샌프란시스코
- flash
- Today
- Total
목록uint (2)
scaleform.minarto.com
숫자를 0~10 까지 찍고 싶다고 치자 for(var i:uint=0; i=0; i--) { trace(i); } 보통 이렇게 짜는 것이 일반적이다... 그러나 이것이 맞는 코드일까? 정답은 아니다...이다. 저렇게 했다가는 컴퓨터 다운되기 쉽상이다. 이 이유를 설명하기 위해서는 for 문과 uint 데이터타입에 대한 정확한 이해가 필요하다. 두번째 구문은 i는 10 부터 i-- 한 값이 0 이상이면 {} 안의 구문을 실행시킨다는 것이다. 여기서 놓쳐서는 안되는 것이 i-- 한 값이 0 이상이면 이다. 0 이상일 때까지 i-- 를 하란 것이 아니다. 결국 i-- 를 한 이후에 그 값을 0과 비교하게 된다. 바로 여기서 두번째 문제가 생긴다. uint 데이터 타입은 0 ~ 4,294,967,295 (2^3..
trace(int(2.6)) // 2 trace(uint(2.6)) // 2 num >= 0 일 때, int(num) = Math.floor(Number(num)) 과 같은 결과를 가진다. 간혹 Math.round 로 착각하는 실수를 하지 말자... num < 0 일 때, uint(num) = 4294967295 가 나오니 주의할 것. trace(uint(undefined)) // 0 trace(uint(null)) // 0 trace(uint(true)) // 1 trace(uint(false)) // 0 trace(uint(NaN)) // 0 trace(uint("")) // 0 null 또는 Boolean 값이 들어왔을 때의 결과는 위와 같다. NaN이라고 나올거라 생각하는 실수 또한 주의 할 것...