AS3fromAS2

ようやくCS3を導入しました。
周回遅れを取り戻さないと。

AS2からAS3への移行についてのカテゴリを増やして、
どんどんメモっていく予定。



/* 未定義のNumber型のデフォルト値が、AS3ではNaNに変わった。
 * AS2ではundefinedを返していた。
 * AS2で初期化の有無を調べるためにundefinedと評価していた人は注意!
*/

//未初期化のNumber
var num:Number;

//AS2ではundefined、AS3ではNaNを返す。
//AS2で初期化の有無を調べるためにundefinedと評価していた人は注意!
trace("Number ---------");
trace("the default value of Number is " + num);
trace("the default value of Number is 'undefined' : " + (num == undefined));
trace("the default value of Number is 'NaN' : " + isNaN(num));

//未初期化のObject
var obj:Object;

//AS2ではundefined、AS3ではnullを返す。
//ただし、undefined == null は true を返すため、
//初期化の有無を調べるためにundefinedと評価することができる。
trace("\nObject ---------");
trace("the default value of Object is " + obj);
trace("the default value of Object == 'undefined' : " + (obj == undefined));
trace("the default value of Object === 'undefined' : " + (obj === undefined));

//未初期化のString
var str:String;

//AS2ではundefined、AS3ではnullを返す。
//Objectと同じ。
trace("\nString ---------");
trace("the default value of String is " + str);
trace("the default value of String == 'undefined' : " + (str == undefined));
trace("the default value of String === 'undefined' : " + (str === undefined));

/* output
 * Number ---------
 * the default value of Number is NaN
 * the default value of Number is 'undefined' : false
 * the default value of Number is 'NaN' : true
 * 
 * Object ---------
 * the default value of Object is null
 * the default value of Object == 'undefined' : true
 * the default value of Object === 'undefined' : false
 * 
 * String ---------
 * the default value of String is null
 * the default value of String == 'undefined' : true
 * the default value of String === 'undefined' : false
 * 
*/

カテゴリー: AS3fromAS2 パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です