[기초] AS 3.0 의 기본 메타 데이터 형식

6318 단어 데이터 형식
원본:http://blog.5d.cn/user39/riahome/200708/427128.html
방금 AS 3.0 으로 mp3 플레이 어 를 쓸 때 심각 한 문 제 를 발 견 했 습 니 다. AS 2.0 에서 Object 데이터 형식 은 undefined 이라는 값 을 포함 합 니 다. 이 값 은 이전에 Object 인 스 턴 스 의 기본 값 이 었 습 니 다. 설명 을 했 지만 아직 할당 되 지 않 은 SoundChannel 형식의 변수 (기본 클래스 는 Object) 와 undefined (undefined == Object 를 사용 하면 Problems 창 에 경고 가 표 시 됩 니 다. "1012: SoundChannel 형식 변 수 는 undefined 일 수 없습니다. 비교 하기 전에 값 undefined 는 형식 SoundChannel 로 강제로 전 환 됩 니 다."기본 메타 데이터 유형 에 대해 다음 과 같이 요약 합 니 다.
기본 메타 데이터 형식 은 Boolean, int, Null, Number, String, uint 와 void 를 포함한다.사용 할 때 기 존의 AS 2.0 과 많은 차이 점 이 있 습 니 다. 
불 리 언 데이터 형식
        Boolean 데이터 형식 은 두 가지 값 을 포함 합 니 다: true 와 false.Boolean 형식의 변 수 는 다른 모든 값 이 잘못 되 었 습 니 다.설명 되 었 으 나 초기 화 되 지 않 은 불 변수의 기본 값 은 false 입 니 다.
int 데이터 형식
        int 데이터 형식 은 내부 에 32 비트 정수 로 저장 되 어 있 으 며, - 2, 147, 483, 648 (- 231) 과 2, 147, 483, 647 (231 - 1) 사이 의 정수 (- 2, 147, 483, 648 과 2, 147, 483, 647 포함) 를 포함한다.초기 ActionScript 버 전 은 Number 데이터 형식 만 제공 합 니 다. 이 데이터 형식 은 정수 에 도 사용 할 수 있 고 부동 소수점 에 도 사용 할 수 있 습 니 다.ActionScript 3.0 에 서 는 현재 32 비트 기호 정수 와 부호 가 없 는 정수 가 있 는 낮은 기계 유형 에 접근 할 수 있 습 니 다.변수 가 부동 소수점 을 사용 하지 않 는 다 면 Number 데이터 형식 대신 int 데이터 형식 을 사용 하 는 것 이 더 빠 르 고 효율 적 입 니 다.
        int 보다 작은 최소 값 이나 int 보다 큰 최대 값 의 정수 치 는 number 데이터 형식 을 사용 해 야 합 니 다.Number 데이터 형식 은 - 9, 007, 199, 254, 740, 992 와 9, 007, 199, 254, 740, 992 (53 비트 정수 치) 간 의 값 을 처리 할 수 있다.int 데이터 형식의 변수의 기본 값 은 0 입 니 다.
Null 데이터 형식
        Null 데이터 형식 은 하나의 값 만 포함 합 니 다: null.이것 은 String 데이터 형식 과 복잡 한 데이터 형식 을 정의 하 는 모든 클래스 (Object 클래스 포함) 의 기본 값 입 니 다.다른 기본 메타 데이터 형식 (예 를 들 어 Boolean, Number, int, uint) 은 모두 null 값 을 포함 하지 않 습 니 다.Boolean, Number, int 또는 uint 형식의 변수 에 null 을 부여 하려 면 Flash Player 는 null 값 을 기본 값 으로 변환 합 니 다.Null 데이터 형식 을 형식 설명 으로 사용 할 수 없습니다.
Number 데이터 형식
        ActionScript 3.0 에서 Number 데이터 형식 은 정수, 부호 없 는 정수 와 부동 소수점 을 나 타 낼 수 있 습 니 다.단, 가능 한 한 성능 을 향상 시 키 기 위해 서 는 Number 데이터 형식 을 부동 소수점 에 만 사용 하거나 int 와 uint 형식 으로 저장 할 수 있 는 32 비트 이상 의 정수 치 를 사용 해 야 합 니 다.부동 소수점 을 저장 하려 면 숫자 에 소수점 을 포함해 야 한다.소수점 을 생략 하면 숫자 는 정수 로 저 장 됩 니 다.
Number 데이터 형식 은 IEEE 2 진 부동 소수점 산술 표준 (IEEE - 754) 이 지정 한 64 비트 2 정밀도 형식 을 사용 합 니 다.이 표준 은 부동 소수점 을 저장 하기 위해 64 개의 사용 가능 한 비트 를 어떻게 사용 하 는 지 규정 하고 있다.그 중 한 자 리 는 숫자 가 양수 인지 음수 인지 지정 하 는 데 쓰 인 다.11 비트 는 지수 에 사용 되 며 2 진법 으로 저 장 됩 니 다.나머지 52 비트 는 '유효 자릿수' (일명 '끝자리') 를 저장 하 는 데 사용 되 며, 유효 자릿수 는 2 의 N 차 멱 이 며, N 은 앞에서 언급 한 지수 이다.
        Number 데이터 형식의 모든 위 치 를 유효 자릿수 에 사용 할 수도 있 고 Number 데이터 형식의 일부 위 치 를 저장 지수 에 사용 할 수도 있 으 며 후자 가 저장 할 수 있 는 부동 소수점 은 전자 보다 훨씬 크다.예 를 들 어 Number 데이터 형식 이 전체 64 비트 를 사용 하여 유효 자릿수 를 저장 하면 저장 할 수 있 는 최대 숫자 는 265 - 1 이다.이 중 11 비트 를 사용 하여 지 수 를 저장 하면 Number 데이터 형식 이 저장 할 수 있 는 최대 유효 숫자 는 21023 이다.
        Number 형식 에서 표시 할 수 있 는 최소 값 과 최대 값 을 Number 클래스 에 저장 하 는 이름 은 Number. MAX 입 니 다.VALUE 와 Number. MINVALUE 의 정적 속성 중.
        Number.MAX_VALUE == 1.79769313486231e+308
        Number.MIN_VALUE == 4.940656458412467e-324
        비록 이 숫자 는 범위 가 매우 넓 지만 대 가 는 이 범위 의 정밀도 가 다소 낮 아진 것 이다.Number 데이터 형식 은 52 비트 를 사용 하여 유효 자릿수 를 저장 하기 때문에 52 비트 이상 의 자릿수 를 사용 해 야 정확하게 표시 할 수 있 는 숫자 (예 를 들 어 점수 1 / 3) 는 근사치 일 것 이다.만약 응용 프로그램 이 소수 가 절대 정밀도 에 도달 하도록 요구한다 면 소수 부동 소수점 산술 (이 진 부동 소수점 산술 이 아 닌) 을 실현 하 는 소프트웨어 를 사용 해 야 한다.
Number 데이터 형식 으로 전체 수 치 를 저장 하면 52 비트 의 유효 자릿수 만 사용 합 니 다.Number 데이터 형식 은 52 비트 와 하나의 특수 한 숨겨 진 위 치 를 사용 하여 - 9, 007, 199, 254, 740, 992 (- 253) 와 9, 007, 199, 254, 740, 992 (253) 사이 의 정 수 를 나타 낸다.
Flash Player 는 NaN 값 을 Number 형식의 변수의 기본 값 으로 사용 할 뿐만 아니 라 숫자 를 되 돌려 주어 야 하지만 숫자 를 되 돌려 주지 않 은 연산 의 결과 로 도 사용 합 니 다.예 를 들 어 음수 의 제곱 근 을 계산 하려 고 하면 결 과 는 NaN 입 니 다.다른 특수 한 Number 값 은 '정 무한대' 와 '음 무한대' 를 포함한다.
주의 하 다.
 
0 으로 나 눌 때 도 0 으로 나 누 면 결 과 는 하나, 바로 NaN 이다.0 으로 나 눌 때 나 눌 수 있 는 것 이 정수 라면 결 과 는 정 무한대 이다.나 누 기 가 마이너스 라면, 그 결 과 는 마이너스 다.
문자열 데이터 형식
        String 데이터 형식 은 16 자리 문자 의 시퀀스 를 표시 합 니 다.문자열 은 내부 에 유 니 코드 문자 로 저장 되 며 UTF - 16 형식 을 사용 합 니 다.문자열 은 자바 프로 그래 밍 언어 에서 처럼 변경 할 수 없 는 값 입 니 다.문자열 값 에 대한 연산 은 문자열 의 새로운 인 스 턴 스 를 되 돌려 줍 니 다.String 데이터 형식 으로 설 명 된 변수의 기본 값 은 null 입 니 다.null 값 과 빈 문자열 (") 은 문자 가 없다 는 것 을 표시 하지만 둘 다 같 지 않 습 니 다.
uint 데이터 형식
        uint 데이터 형식 은 내부 에 32 비트 의 부호 없 는 정수 로 저장 되 어 있 으 며 0 과 4, 294, 967, 295 (232 - 1) 사이 의 정수 (0 과 4, 294, 967, 295 포함) 를 포함한다.uint 데이터 형식 은 부정 수 를 요구 하 는 특수 한 상황 에 사용 할 수 있 습 니 다.예 를 들 어 uint 데이터 형식 을 사용 하여 픽 셀 색상 값 을 표시 해 야 합 니 다. int 데이터 형식 은 내부 기호 위치 가 있 기 때문에 이 기호 위 치 는 색상 값 을 처리 하기에 적합 하지 않 습 니 다.uint 보다 큰 최대 값 의 정수 치 는 Number 데이터 형식 을 사용 해 야 합 니 다. 이 데이터 형식 은 53 비트 의 정수 치 를 처리 할 수 있 습 니 다.uint 데이터 형식의 변수의 기본 값 은 0 입 니 다.
void 데이터 형식
        void 데이터 형식 은 하나의 값 만 포함 합 니 다: undefined.초기 ActionScript 버 전에 서 undefined 는 Object 클래스 인 스 턴 스 의 기본 값 입 니 다.ActionScript 3.0 에서 Object 인 스 턴 스 의 기본 값 은 null 입 니 다.undefined 값 을 Object 클래스 의 인 스 턴 스 에 부여 하려 면 Flash Player 는 이 값 을 null 로 변환 합 니 다.형식 변수 가 없 는 undefined 값 만 부여 할 수 있 습 니 다.무 유형 변 수 는 유형 주석 이 없 거나 별표 (*) 를 유형 주석 으로 사용 하 는 변 수 를 말한다.void 를 반환 형식 주석 으로 만 사용 할 수 있 습 니 다.
개체 데이터 형식
        Object 데이터 형식 은 Object 클래스 에서 정의 합 니 다.Object 클래스 는 ActionScript 의 모든 클래스 정의 의 기본 클래스 로 사 용 됩 니 다.ActionScript 3.0 의 Object 데이터 형식 과 초기 버 전의 Object 데이터 형식 은 다음 과 같은 세 가지 차이 가 있 습 니 다. 첫째, Object 데이터 형식 은 형식 설명 이 없 는 변수 에 지정 한 기본 데이터 형식 이 아 닙 니 다.둘째, Object 데이터 형식 은 undefined 라 는 값 을 포함 하지 않 습 니 다. 이 값 은 이전에 Object 인 스 턴 스 의 기본 값 이 었 습 니 다.셋째, ActionScript 3.0 에서 Object 클래스 인 스 턴 스 의 기본 값 은 null 입 니 다.
초기 ActionScript 버 전에 서 는 형식 설명 이 없 는 변수 에 Object 데이터 형식 을 자동 으로 부여 합 니 다.ActionScript 3.0 은 현재 진정한 무 형 변수 라 는 개념 을 포함 하고 있 기 때문에 형식 주석 이 없 는 변수 에 Object 데이터 형식 을 부여 하지 않 습 니 다.형식 설명 이 없 는 변 수 는 현재 무 형식 변수 로 간주 되 고 있 습 니 다.코드 의 독자 에 게 일부러 변 수 를 유형 없 이 유지 하고 있다 는 것 을 명확 하 게 밝 히 고 싶다 면 새로운 별표 (*) 를 사용 하여 유형 주석 을 표시 할 수 있 습 니 다. 이것 은 생략 유형 주석 과 같은 효 과 를 가 집 니 다.아래 의 예 는 두 개의 같은 효 과 를 가 진 문 구 를 보 여 줍 니 다. 둘 다 무 유형 변수 x 를 설명 합 니 다.
        var x
        var x:*
        형식 변수 가 없어 야만 값 undefined 를 저장 할 수 있 습 니 다.하면, 만약, 만약...
undefined 는 데이터 형식의 변 수 를 부여 합 니 다. Flash Player 는 이 값 을 undefined 에서 이 데이터 형식의 기본 값 으로 변환 합 니 다.Object 데이터 형식의 인 스 턴 스 에 대해 기본 값 은 null 입 니 다. 이 는 undefined 를 Object 인 스 턴 스 에 부여 하려 고 하면 Flash Player 는 값 undefined 를 null 로 변환 합 니 다.

좋은 웹페이지 즐겨찾기