Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Ассоциативный массив, удаление индекса (http://www.flasher.ru/forum/showthread.php?t=119694)

petav 27.12.2008 22:50

Ассоциативный массив, удаление индекса
 
Здравствуйте, подскажите пожалуйста как удалить индекс из ассоциативного массива, т.е имеем такой массив:
Код AS3:

var arr:Array = new Array();
arr['Key1'] = 'Value1';
arr['Key2'] = 'Value2';
arr['Key3'] = 'Value3';
arr['Key4'] = 'Value4';

Необходимо удалить индекс с именем, к примеру 'Key2', как?

P.S.: Для удаление есть метод splice, pop, shift. Очень подходит splice, но ему нужно передать числовые индексы. Может есть другие специализированные методы или метод который вернет индекс в числовом эквиваленте?

murz 27.12.2008 22:55

Код AS3:

var arr:Array=new Array();
arr["key"]=10;
 
for(var value:String in arr){
        trace(value, arr[value]);
}
delete arr["key"];
for( value in arr){
        trace(value, arr[value]);
}


kackbip 27.12.2008 22:55

В хелпе вобщето написано, что не рекомендуется использовать ассоциативные массивы. Для этого нужно использовать Object. Удалять свойства Object так obj["key"]=null
Ну еще от ситуации зависит.

Вот из хелпа
Цитата:

Do not use the Array class to create associative arrays (also called hashes), which are data structures that contain named elements instead of numbered elements. To create associative arrays, use the Object class. Although ActionScript permits you to create associative arrays using the Array class, you cannot use any of the Array class methods or properties with associative arrays.
Вобщем не для того класс Array был создан. Для ваших целей используйте Object

petav 27.12.2008 23:17

Спасибо за советы.


Часовой пояс GMT +4, время: 00:21.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.