Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Что выводит length, если в массиве есть вложенные массивы? (http://www.flasher.ru/forum/showthread.php?t=131338)

TommyLee 18.10.2009 13:15

Что выводит length, если в массиве есть вложенные массивы?
 
Код AS3:

var row1:Array=[6,2.99];
var row2:Array=[4,9.99];
var row3:Array=[1,59.99];
var collect:Array=[row1,row2,row3];

1. Что выводит length, если в массиве есть вложенные массивы? Количество вложенных массивов или количество элементов во всех вложенных массивах + в основном массиве, если есть?
2. toString() выводит список элементов массива и вложенных массивов?

AlexsWulf 18.10.2009 13:25

А проверить trace() нет желания?

etc 18.10.2009 13:37

1. Количество элементов в массиве;
2. Трейс делает toString для массива, а тот в свою очередь toString() для элементов.

TommyLee 18.10.2009 21:24

Цитата:

Сообщение от AlexsWulf (Сообщение 858684)
А проверить trace() нет желания?

пока нет ни flash ide, ни flex sdk.

Добавлено через 4 минуты
Цитата:

Сообщение от etc (Сообщение 858688)
1. Количество элементов в массиве;

Уточню по коду:
Код AS3:

var row1:Array=[6,2.99];
var row2:Array=[4,9.99];
var row3:Array=[1,59.99];
var collect:Array=[row1,row2,row3];
trace(collect);
//2,2,2 ?


etc 18.10.2009 23:51

Цитата:

Сообщение от TommyLee (Сообщение 858790)
Уточню по коду:
Код AS3:

var row1:Array=[6,2.99];
var row2:Array=[4,9.99];
var row3:Array=[1,59.99];
var collect:Array=[row1,row2,row3];
trace(collect);
//2,2,2 ?


Что 2, 2, 2? Есть массив. Делаем toString для него. Он делает toString для каждого элемента. Каждый элемент — массив, соответственно toString делается и для них. Не будет никаких 2, 2, 2, я вообще не понимаю, откуда можн было взять эти безумные числа.

TommyLee 19.10.2009 09:11

Цитата:

Сообщение от etc (Сообщение 858819)
Что 2, 2, 2?

в смысле в каждом вложенном массиве по 2 элемента.

alexcon314 19.10.2009 09:55

Код:

var row1:Array=[6,2.99];
var row2:Array=[4,9.99];
var row3:Array=[1,59.99];
var collect:Array=[row1,row2,row3];
trace(collect);//6,2.99,4,9.99,1,59.99
trace(collect.length);//3
trace(collect[0].length);//2

TommyLee, у вас нет ни флэша, ни флекса, ни фд... и вот вы выкладываете кусок кода и спрашиваете что будет в трэйсе...
Вы вообще с какой целью интересуетесь?:D
типа "у меня нет машины.. а что будет, если повернуть ключ зажигания? очень стало интересно.. подскажите!". Вы представляете себе дальнейший диалог?

etc 19.10.2009 12:40

Цитата:

Сообщение от TommyLee (Сообщение 858859)
в смысле в каждом вложенном массиве по 2 элемента.

toString() для вложенных элементов массива collect, являющихся все теми же массивами, вызовет toString() уже для их вложенных элементов, т. е. для чисел.
В результате вы увидите все числа из всех массивов.

TommyLee 19.10.2009 20:04

Цитата:

Сообщение от alexcon314 (Сообщение 858863)
[code]
Вы вообще с какой целью интересуетесь?:D

Программировать, с какой же еще. Сегодня flex develop поставлю. Просто времени после работы мало остается.

Felicast 19.10.2009 21:08

Цитата:

Сегодня flex develop поставлю
прикольное название. может все-таки flex builder или flash develop? :D


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

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