終於正式開始從as2遷移到as3了,這段時間裡,我會把自己學習過程中的一些小經驗貢獻給大家。另外,因為是從as2遷移到as3,所以本文便從基礎開始,針對2者的差異做**分析比較。
[1b]1、常量差異
[/1b]請看as2**:
var str:string;
var num:number;
var boo:boolean;
var obj:object;
var notyped;
trace(str+newline+num+newline+boo+newline+obj+newline+notyped);
//return
undefined
undefined
undefined
undefined
undefined再來看as3**:
var str:string;
var num:number;
var boo:boolean;
var obj:object;
var notyped;
trace(str+"\n"+num+"\n"+boo+"\n"+obj+"\n"+notyped);
//return
null
nanfalse
null
undefined從2者可以清楚的看到:在as2中string、number、boolean、object的預設值都是undefined,而在as3中則分別為null、nan、false、null。只有未作申明的變數的預設值才是undefined。as2中還有乙個常量newline在as3中已經取消,由"\n"替換。
[1b]2、操作符差異
[/1b]這裡先只討論instanceof。雖然as3中還保留了這個操作符,但as3中推薦用is代替它。而且is的用法更為靈活。
比如:
var mystr:string="test";
var mytest:test = new test();//test is extends supertest
trace(mytest instanceof supertest); //as2 return false //as3 return true
trace(mystr instanceof string);//as2 return false
trace(mystr instanceof string);//as3 return true
trace(mystr is string);//as3 return true
從此例可以看出instanceof在as3中的比as2中有了變化。在as2中instanceof不會將原始型別轉換為包裝物件,因此在上面例子中的string驗證中返回false,並且它對超類(如supertest)不起作用。而在as3中它是基於物件的原型鏈的,所以在第乙個trace中會返回true。但是as3中instanceof並不支援介面,而is支援。比如:
var mytest:test = new test();//test implements inte***cetest
trace(mytest is inte***cetest); //as3 return true
trace(mytest instanceof inte***cetest); //as3 return false
從flash as2 0遷移到as3 0
終於正式開始從as2遷移到as3了,這段時間裡,我會把自己學習過程中的一些小經驗貢獻給大家。另外,因為是從as2遷移到as3,所以本文便從基礎開始,針對2者的差異做 分析比較。1b 1 常量差異 1b 請看as2 var str string var num number var boo boole...
從 ADT 遷移到 Android Studio
如果你看到上面的優點,已經克服了心中的懷疑和恐懼,準備動手遷移,下面提供一些遷移提示。部分需要科學上網 你無法科學上網?趕緊搜一下,自己搭或者買乙個吧。世界如此多嬌,人生苦短。將你遇到過問題的出錯資訊用 google 搜尋,第一條來自 stackoverflow 的答案就是你想要的。android ...
從 Redis 遷移到 SSDB
工具 在tools目錄中的redis import.phpphp 指令碼可以用來將 redis 伺服器上的資料,拷貝到 ssdb 伺服器上 用法 php redis import.php redis host redis port redis db ssdb host ssdb port 引數 請確...