日別アーカイブ: 2010年9月18日

NetConnectionにハマる

今やっているプログラムで、ちょっとハマったので覚え書き。

NetConnectionクラスを使って、ビデオプレイヤーを作っています。

対象のデータがストリーミングサーバからの動画なのか、ローカルの動画なのかを判断しようと、NetConnection.uriメンバ変数を使おうとした。ローカルではconnect(null)とするため、uriはnullになるのではと思ってた。実際にtrace(nc.uri)とすると画面には「null」と表示されるので、何の疑いもなく「if(nc.uri==null)」と書いてた。

だけど挙動を見ると様子がおかしい。結果false。trace(nc.url+”,”+(nc.url==null))としてみると

null
false

ってなぜー!

ふと思ってtrace(typeof nc.uri)と書いてみると、なんとstringだと。nullになってたんじゃなくて、文字列の「”null”」が入っていた。なんじゃそりゃー。

「if(nc.uri==”null”)」と書き直したらうまくいった。どういう仕様だ。ぷんぷん。