Форум 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=114515)

Alex_beginner 31.07.2008 16:04

Проблема с инициализацией массива внутри функции
 
Уважаемые коллеги!

Вопрос у меня возможно банальный, но что то понять в этом моменте я не могу.
Вопрос, значит, в следующем.

Есть функция:

Код:

function fillOneVertex(trgData:Object, colorCompIndex:Number):BitmapData
        {
                var srcTriangle:Array = new Array();
                srcTriangle[0]=10;
                trace(srcTriangle[0]);// пишет undefined
                trace(srcTriangle instanceof Array)// пишет false
          }

При выполнении этой функции не создается массив, т.е.:

Код:

trace(srcTriangle[0]);// пишет undefined
Ситуация в корне меняется, когда пытаешься создать массив с помощью литерала:
Код:

var srcTriangle:Array = [];
Теперь строка
Код:

trace(srcTriangle[0]);
выдает - 10, но строка

Код:

trace(srcTriangle instanceof Array)
по прежнему говорит false.

Пробовал создать в отдельном проекте простую функцию, синтаксис:

Код:

var myVar:Array = new Array()
работает прекрасно.
Вопрос: В чем может быть загвоздка?

Заранее спасибо.

chingachgoog 31.07.2008 16:12

Не знаю, у меня все верно ваш первый код показывает

Alex_beginner 31.07.2008 16:22

Хех! Разобрался! Глюк был в том, что до функции в коде была ошибка инициализации объекта:

Код:

var trgData:Object =
        {
                colorComp: Array = [RGB_1[0], RGB_2[0], RGB_3[0]]
        };

Это и привело к странному поведению класса Array в последующем. Любопытно, что компилятор такого рода накладки незамечает.
Спасибо chingachgoog, что откликнулся на крик о помощи!


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

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