TONPOOBLOG 移転のお知らせ

これまで本URL(http://tonpooblog.blogspot.com/)で運営してきたこのTONPOOBLOGですが、この度下記の新URLに移転することとなりました。

http://www.tonpoo.com/blog/

今後とも上記URLにて、変わらぬご愛顧をお願い致します。

TONPOOBLOG管理人:Tonpoo.com

2009年5月20日水曜日

配列の(浅い)コピー

ActionScriptで配列をコピーする方法について。

Flash CS4 Professional ActionScript 2.0

下記のように単に元配列を参照しただけでは、copy_arrayへの変更が元配列(base_array)にも及んでしまう。
var base_array:Array = new Array("a","b","c");
var copy_array:Array = base_array;
copy_array.shift();
trace(base_array); //"b","c"←base_arrayの方も変更されている
trace(copy_array); //"b","c"

Array.slice()メソッドを引数なしで使うことで、配列の(浅い)コピーを作ることができる。
var base_array:Array = new Array("a","b","c");
var copy_array:Array = base_array.slice();
copy_array.shift();
trace(base_array); //"a","b","c"←base_arrayの方は元のまま
trace(copy_array); //"b","c"

0 件のコメント: