Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Масивы.... (http://www.flasher.ru/forum/showthread.php?t=62731)

sergeyne@ 04.09.2004 21:13

Масивы....
 
Вроде простой, чайниковский вопрос, и все-же....

Как из массива удалить элемент с неким значением (все элементы массива уникальны)...

ДА еще желательно без извращений типа сдвигов, перезаписываний в другой массив и т.п.

Функции или операторы ведь должны быть какие-то...

DeliMIter 04.09.2004 22:06

Re: Масивы....
 
Цитата:

Оригинал написал(а) sergeyne@
Функции или операторы ведь должны быть какие-то...
Есть, и, между прочим, все в хелпе описаны. Array.splice() удаляет элемент с заданным индексом, сдвигая содержимое. Находишь индекс - удаляешь. delete просто удаляет элемент массива без сдвига.

sergeyne@ 04.09.2004 22:11

Я знаю про splice , но мне надо удалить сразу елемент с этим значением..Но в том то вся и фишка , что индекс неизвестен..

YuriiZelenev 04.09.2004 23:43

2ergeyne@:
 
Ok, neznaesh, index, no znachit znachenie, ti znaesh, tak?
Esli nado udalit' znachenie elementa, to:
Код:

var a=['a','b','c','d','e','f','g'],find='e';
for(var l=a.length,i=0;i<l;i++){
        if(a[i]==find){trace("bingo!\na["+i+"] == "+find),delete a[i];}
}
trace(a);

Esli nado udalit' sam element, to
Код:

var a=['a','b','c','d','e','f','g'],find='e';
for(var l=a.length,i=0;i<l;i++){
        if(a[i]==find){trace("bingo!\na["+i+"] == "+find),a.splice(i,1);}
}
trace(a);

Vot i vse dela...

sergeyne@ 05.09.2004 01:29

Спасибо еще раз=))))Все работает... :)


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

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