Changes between Version 1 and Version 2 of HowTo/ActionScript2Introduction/Introduction


Ignore:
Timestamp:
Dec 17, 2010, 7:15:50 PM (14 years ago)
Author:
村山 俊之
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • HowTo/ActionScript2Introduction/Introduction

    v1 v2  
    66== 基本は !JavaScript と同じ ==
    77
    8 言語仕様は基本的には !JavaScript に酷似しています。変数の宣言方法、演算子、関数の書き方、
     8言語仕様は基本的には !JavaScript に酷似しています。変数の使い方、演算子、関数の書き方、分岐やループなどの制御命令、無名関数や、それをクロージャとして使えるところまで、同じように書くことができます。
     9
     10== 変数の型指定 ==
     11
     12!JavaScript では変数自体に型を持たせることはできませんでしたが、 Action Script 2 では変数を宣言する際に、その変数に代入できる値の型を指定することができます。例えば、数値のみを代入できる変数を宣言するには、以下のように記述します。
     13
     14{{{
     15#!js
     16var hoge:Number;
     17}}}
     18
     19このとき、変数 hoge に数値以外のものを代入するようなプログラムを書くと、コンパイルエラーになります。
     20
     21{{{
     22#!js
     23var hoge:Number;
     24hoge = 10;      // ok.
     25hoge = "fuga";  // コンパイルエラー
     26}}}
     27
     28型指定は関数の引数や戻り値に対しても指定できます。例えば、 3つの数値を引数に取り、その平均を求める関数は、以下のように書くことができます。
     29
     30{{{
     31#!js
     32function calcAverage3(a:Number, b:Number, c:Number):Number {
     33    return (a + b + c) / 3;
     34}
     35}}}
     36
     37このとき、この関数に渡す引数の型が数値以外であったり、この関数の戻り値を代入する変数が Number 型ではなかったりすると、コンパイルエラーになります。
     38
     39== Java ライクなオブジェクト指向 ==
     40
     41!JavaScript がプロトタイプ型のオブジェクト指向言語であるのに対して、 Action Script 2 のオブジェクト指向モデルはやや Java に似たスタイルになっています。
     42
     43例えば、会社の名簿に載せる人の情報を表すオブジェクト Human について、 !JavaScript では以下のように記述することになりますが、
     44
     45{{{
     46#!js
     47function Human(number, name, age, sex, section, role) {
     48    this.number = number;
     49    this.name = name;
     50    this.age = age;
     51    // ...
     52}
     53
     54Human.prototype = {
     55    "getNumber": function() { return this.number; },
     56    "getName": function() { return this.name; },
     57    // ...
     58};
     59}}}
     60
     61同様のオブジェクトについて、 Action Script では以下のようにクラスとして記述することができます。