Форум 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)
-   -   Проблемы с масивом (http://www.flasher.ru/forum/showthread.php?t=71565)

iNils 08.11.2005 19:07

xml_array = [];
xml_array[2, 1] = 5;
xml_array[1] = 6;
trace (xml_array[2, 1]);
trace (xml_array[1]);
trace (xml_array[2]);
//////////
trace ("--------------")
//////////
xml_array = [];
xml_array[2] = [];
xml_array[2][0] = 4;
xml_array[2][1] = 5;
trace (xml_array[2]);
trace (xml_array[2][1]);

7thsky™ 08.11.2005 19:08

:) приколист

iNils 08.11.2005 19:08

Цитата:

Сообщение от intro
Ответьте конкретней, что мне надо сделать, что бы массив читалься вне функции? Заранее благодарен.

_global.xml_array = []

и все...

iNils 08.11.2005 19:12

И еще про двухмерные массивы:
если тебе надо создать xml_array[i][j]
то после задания xml_array как массива
xml_array = []
нужно элемент xml_array[i] тоже сделать массивом
xml_array[i] = []

ну а трехмерный соответственно так
xml_array[i][j] = []
и будет xml_array[i][j][k] = "что то тут"

7thsky™ 08.11.2005 19:14

во флэше нету многомерных массивов, есть массивы ОДНОМЕРНЫЕ, многомерные эмулируются же таким образом, что элемент массива, сам является массивом

то бишь
Код:

var a:Array = new Array ();

for (var i:Number = 0; i < 10; i++) {
        a [i] = new Array ();
        for (var j:Number = 0; j < 10; j++) {
                a [i] [j] = 'test_' + i + '_' + j;
               
                trace ('>> a [ ' + i + ', ' + j +' ] > ' + a [i] [j]);
        } // end for
} // end for


K.A.T.A.F.A.L.K.E.R 08.11.2005 19:51

var my_xml:XML = new XML();
var xml_array:Array = new Array();
my_xml.ignoreWhite = true;
my_xml.load("http://localhost/xml2.php");
my_xml.onLoad = function(){
for (j=1; j<4; j++){
xml_array[j] = new Array();
for (i=1; i<4; i++) {
xml_array[j][i] = {id:my_xml.childNodes[0].childNodes[j-1].childNodes[i-1].childNodes[0].nodeValue};
trace(xml_array[j][i].id);
}
}
}
if (xml_array[1][1].id == 0) {
my_color = new Color(this.podstan_1);
my_color.setRGB(0xFF0000);
} else {
my_color = new Color(this.podstan_1);
my_color.setRGB(0x00FF99);
}
trace(xml_array[1][2].id);

Как там с обработкой ХМЛ-я не знаю, но с массивом, по идее, нужно так...

K.A.T.A.F.A.L.K.E.R 08.11.2005 19:55

ААААА!!! Сорри за повторение уже сказанного - не заметил вторую страницу :D

intro 09.11.2005 12:57

Объявить глобальную так можно?

_global.xml_array:Array = new Array();

У меня синтаксическая ошибка...

iNils 09.11.2005 13:02

нет, строгая типизация для _global не работает

надо так
_global.xml_array = new Array();

unlexx 09.11.2005 13:02

тебе же ЭкшенСкриптовским языком написали!!! Используй абсолютную адресацию (_root _level0 _global)
и вообще зачем делать массив из xml-ки?
можно же сразу брать значения из нод.


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

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