- ベストアンサー
データ型の必然性について
- Flashではデータ型を指定する必要がなく便利だが、指定することでプロの人が使いやすくなる
- データ型の指定による影響はないが、ソースコードの可読性を向上させるために使用される
- データ型の必然性に疑問を感じるが、誤った使い方を防ぐために指定される場合もある
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
質問の前半部分の変数宣言の必然性などは私にもわかりませんが、 var i:Number; という記述は厳密な型指定といわれるもので、 1.誤った型が入ったときコンパイルエラーとなる 2.コードヒントが表示される 等の利点があります。 1.誤った型が入ったときコンパイルエラーとなる var i:Number; var s:String; と宣言して置いて i = "12" と記述するとコンパイルエラーとなります。 これは数値型に文字型を代入したためです。 同様に s = 1 もエラーとなります。 これらがコンパイルエラーとなることで、変数に謝った型が入るのを防ぐことが出来ます。 また trace(s.hoge) と存在しないプロパティを記述してもコンパイルエラーとなります この厳密な型指定はvarで宣言しなければ使用できません 2.コードヒントが表示される var s:String と記述した後、 sに続いて.(ピリオド )を入力した時点で 使用できるメソッドとプロパティの一覧が表示されます。これ結構便利ですよね。 またコードヒントは接尾辞をつけたり(String型の場合はhoge_strと_strをつける)、 //String moji; とコメントを入れることでも使用できます (//MovieClip this;でthisのコードヒントが出せるので便利) 関数も同様に function s():String { return 2; } でコンパイルエラー(戻り値が文字型ではない) function v():Void{ return 1 } でコンパイルエラー(戻り値を返しているから)となります。 つまり質問者さんが言うように誤った使い方をされないためだと私は思います。