- 2007/04/13 18:46
- Flash / AS
例えば以下のようなコードがあったとします。
var tmp:Array = new Array( “a”, “b”, “c”, “d” );
trace( tmp.length );
delete tmp[2];
delete tmp[3];
trace( tmp.length );
さて、2回目のtraceの結果はどうなるでしょうか。
結果は以下のようになります。
4
4
配列の中身は
( “a”, “b”, “c”, “d” )から、
( “a”, “b”, undefined, undefined )に変わります。
これではちょっと困ります。
deleteしたならundefinedなんか残さないで消えてほしいものです。
配列のlengthを変えるにはどうしたらいいんでしょうか。
調べてびっくりしたのですが、配列のlengthを変えるには以下のようにします。
tmp.length = 2;
ええええええぇぇぇぇぇぇぇええええぇぇぇえぇぇえぇぇぇぇっっっっ!!
配列のlengthってアクセス可能なの!?
ぼくはすごくびっくりしました。
これで無事に配列の中身が、
( “a”, “b” )になりました。
めでたしめでたし。
- Newer: [ misc ] レンダリング管理
- Older: ハッカーになろう
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://blog.taikomatsu.com/2007/04/13/as-array%e3%81%aelength/trackback/
- Listed below are links to weblogs that reference
- [ as ] Arrayのlength from memlog