イナヅマTVログ

連番にならない数値KeyはArrayではなくObjectで

| 0件のコメント

コードを書く時の常識の一つな話のエントリーです。
既に多くの書籍・サイトで言い尽くされているとは思いますが…

配列を作るときKey(添字)は連番になっていないと余分なデータをメモリ上に確保するので効率が悪くなります。
Actionscriptに限らずどの言語でも共通する知っておかなくてはいけないことの一つです。
PHPは例外です。
PHPは配列(array)自体が連想配列(ハッシュ, Object)なのでこの問題には該当しません。

Key 0, 100 のデータが欲しい時に Array型で作ってしまうと、必要のない 1 ~ 99 までのデータもメモリ上に確保されてしまいます。

var datas:Array = [];
datas[0] = 'some value';
datas[100] = 'another value';

Object型で作れば余分なメモリを浪費する心配はなくなります。

var datas:Object = {};
datas[0] = 'some value';
datas[100] = 'another value';

コメントを残す

必須欄は * がついています


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください