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

джонатан 06.11.2008 16:05

Массив не хочет заполняться после определенного момента.
 
Здравствуйте! Вот у меня такая беда. Еще немного и мой мозг лопнет :wacko:. Вобщем так. Создаю я массив:

Код:

var Colors:Array = new Array(000000, 333333, 666666, 999999, cccccc, ffffff, ff0000, ff0000, ff0000, ffff00, ffff00, ff00ff, 000000, 330000, 660000, 990000, cc0000, ff0000, 990000, 990033, 990066, 990099, 9900cc);
Вродебы все отлично, но вот некомпилится! Выдает:

')' or ',' expected

Но вот, когда я убираю из последнего значения 2 последних символа (9900cc), то все нормально компилится.

Что за чертовщина, никто не знает случайно?
Спасибо.

Валиант 06.11.2008 16:09

Попробуйте значения в массиве поставить в кавычки

Division 06.11.2008 16:09

Боюсь, что это не чертовщина, а незнание языка.
Если мне не изменяет память, шестнадцатиричные литерылы начинаются с 0x.

MrXoT 06.11.2008 16:09

попробуй писать так
Код:

var Colors:Array = new Array("000000", "333333", "666666", "999999", "cccccc" ....

Валиант 06.11.2008 16:09

либо последнее значение выделить кавычками
Код:

"9900cc"

Alkaz 06.11.2008 16:31

to MrXoT&Валиант интересно что дадут извращения с кавычками кроме того что компилятор не будет выдавать ошибки?
если вам нужен массив с цветами, то делайте как сказал Division, а именно:
Код:

var Colors:Array = new Array(0x000000, 0x333333, 0x666666, 0x999999, 0xcccccc, 0xffffff, 0xff0000, 0xff0000, 0xff0000, 0xffff00, 0xffff00, 0xff00ff, 0x000000, 0x330000, 0x660000, 0x990000, 0xcc0000, 0xff0000, 0x990000, 0x990033, 0x990066, 0x990099, 0x9900cc);

джонатан 06.11.2008 17:40

Да. В ковычках все нормально работает, и если подставить 0x то тоже все гуд, но вопрос то у меня был поставлен несколько иначе! Я не спрашивал как решить проблему, я спрашивал почему это число выдает ошибку!

А вот на счет незнания языка:

Уважаемый Division, вот если вы такой умный, то разъясните мне дураку, почему
Код:

9900cc
выдает ошибку, а все остальные, анологичные числа, такие как:

Код:

cccccc, ffffff, ff0000, ff0000, ff0000, ffff00, ffff00, ff00ff, cc0000, ff0000
компилятся нормально!?

Division 06.11.2008 17:47

я не знаю, как в ActionScript, но в большинестве других известных мне ЯП идентификатор не может начинаться с цифры. То есть если ffff00 может сойти за идентификатор переменной, то 9900cc уже нет. Так что ИМХО проблема в этом.
Цитата:

Компилятся нормально!?
Сделай трейс получившегося массива. Всё undefined, не так ли?
UPD:
Цитата:

а все остальные, анологичные числа, такие как:
cccccc, ffffff, ff0000, ff0000, ff0000, ffff00, ffff00, ff00ff, cc0000, ff0000
Это не числа (:

axiom 07.11.2008 00:39

А почему ты так гамму ограничиваешь массивом?Разве весь спектор нельзя использовать?


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

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