Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   as1, сравнить массивы (http://www.flasher.ru/forum/showthread.php?t=70467)

Mnilionic 15.10.2005 02:56

as1, сравнить массивы
 
old_data = ["a", "b", "g"];
new_data=["b", "c", "f", "k"];
помогите, пожалуйста, получить массивы:
get_element = ["c", "f", "k"];
lost_element = ["b", "g"];

iNils 15.10.2005 11:47

А логика какая?

Mnilionic 15.10.2005 19:54

сравнив старый и новый массив нужно получить элементы которых нет в old_data и соответственно, которых нет в new_data

KidsKilla 15.10.2005 20:11

видимо
old_data = ["a", "b", "g"];
new_data=["b", "c", "f", "k"];
и
get_element = ["c", "f", "k"];
lost_element = ["a", "g"];
...

Mnilionic 15.10.2005 20:23

это дано:
old_data = ["a", "b", "g"];
new_data=["b", "c", "f", "k"];

а это ответ:
get_element = ["c", "f", "k"];
lost_element = ["a", "g"];

и нужно решение. понятно?

Mnilionic 16.10.2005 02:26

в общем уже сам смастерил...
Код:

old_data = ["g", "a", "e", "d"];
new_data = ["e", "v", "a", "b", "c", "g"];
lost_data = old_data;
get_data = new_data ;
for (i1=0; i1<old_data.length; i1++) {
    for (i2=0; i2<new_data.length; i2++) {
        if (old_data[i1] == new_data[i2]) {
            lost_data.splice(i1, 1);
            get_data.splice(i2, 1);
            i1--;
            break;
        }
    }
}
trace(lost_data);
trace(get_data);


iNils 16.10.2005 02:42

только не понятен смысл:
lost_data = old_data;
get_data = new_data;

в данном случаи ты создаешь не новые массивы, а указатели на массивы. и производя действия с lost_data, ты делаешь то же самое и в old_data

KidsKilla 16.10.2005 03:03

lost_data = old_data.concat();
get_data = new_data.concat();

iNils 16.10.2005 03:23

Да нет, ты не прав. Ты создаешь массив с одним элементом который есть String. Вариант KidsKilla то что нужно.

Mnilionic 16.10.2005 03:24

iNils, вариант KidsKilla тоже вызывает аборт скриптов :(


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

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