Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 10.11.2005, 20:59
gun 242 вне форума Посмотреть профиль Отправить личное сообщение для gun 242 Найти все сообщения от gun 242
  № 21  
Ответить с цитированием
gun 242

Регистрация: Aug 2000
Сообщений: 72
массив в массив пихать неохото так как система уже сделана.
нужно будет переделывать.
но появилась необходимость перевести её на семёрку.

Старый 11.11.2005, 12:36
andr64 вне форума Посмотреть профиль Отправить личное сообщение для andr64 Посетить домашнюю страницу andr64 Найти все сообщения от andr64
  № 22  
Ответить с цитированием
andr64
 
Аватар для andr64

Регистрация: Sep 2005
Сообщений: 65
Отправить сообщение для andr64 с помощью ICQ
тебе можно сделать что то типа
...может тормозить
Код:
arr = new Array();
arr[[0, 1]] = 1;
arr[[0, 2]] = 2;
arr[[1, 1]] = 3;
arr[[1, 2]] = 4;
arr[[2, 1]] = 5;
arr[[2, 2]] = 6;
//
Array.prototype.len = function() {
	var l = 0;
	var a = [];
	for (var g in this) {
		//trace('key['+g+'] type['+typeof (g)+'] val['+this[g]+'] type['+typeof (this[g])+']');
		if (typeof (this[g]) != 'function') {
			if (typeof (g) == 'string') {
				var c = g.split(',', 2)[0];
			} else {
				var c = g;
			}
			if (a[c] == undefined) {
				l++;
				a[c] = true;
			}
		}
	}
	return l;
};
//
trace(arr.len());
особенности массивов =)
Код:
a = [1, 2, 3];
trace('len='+a.length+' a=['+a+']');
//
a[6] = 6;
trace('len='+a.length+' a=['+a+']');
//
delete a[6];
trace('len='+a.length+' a=['+a+']');
а вообще такая запись a[[0,1]]=1; приводит к тому что ключ [0,1] конвертируется в строку.
Код:
aa = [];
aa[[0, 1]] = 1;
for (var g in aa) {
	trace(g+' '+typeof (g));
}

Старый 11.11.2005, 13:13
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 23  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
Сообщение от andr64
а вообще такая запись a[[0,1]]=1; приводит к тому что ключ [0,1] конвертируется в строку.
Код:
aa = [];
aa[[0, 1]] = 1;
for (var g in aa) {
	trace(g+' '+typeof (g));
}
а такая?
aa = [];
aa[0] = 1;
aa[1] = 2;
for (var g in aa) {
trace(g+' '+typeof (g));
}
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 11.11.2005, 13:30
andr64 вне форума Посмотреть профиль Отправить личное сообщение для andr64 Посетить домашнюю страницу andr64 Найти все сообщения от andr64
  № 24  
Ответить с цитированием
andr64
 
Аватар для andr64

Регистрация: Sep 2005
Сообщений: 65
Отправить сообщение для andr64 с помощью ICQ
ага
кароче строки рулят

Старый 11.11.2005, 13:37
gun 242 вне форума Посмотреть профиль Отправить личное сообщение для gun 242 Найти все сообщения от gun 242
  № 25  
Ответить с цитированием
gun 242

Регистрация: Aug 2000
Сообщений: 72
Цитата:
Сообщение от andr64
ага
кароче строки рулят
а зачем таким способом лазить по массиву?
моим способом все данные прекрасно извлекаються без лишних усилий
arr = new Array();
arr[[0, 1]] = 1;
arr[[0, 2]] = 2;
arr[[1, 1]] = 3;
arr[[1, 2]] = 4;
arr[[2, 1]] = 5;
arr[[2, 2]] = 6;
for (i=0; i<arr.length; i++) {
trace(arr[[i, 1]]+" "+arr[[i, 2]]);
}

Старый 11.11.2005, 13:52
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 26  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Если "без лишних усилий", то зачем топик создал?

Если работает в 6-ке, то это не значит, что механизм правильный. В чем ты убедился столкнувшись с проблемой в 7-ке.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 11.11.2005, 13:55
gun 242 вне форума Посмотреть профиль Отправить личное сообщение для gun 242 Найти все сообщения от gun 242
  № 27  
Ответить с цитированием
gun 242

Регистрация: Aug 2000
Сообщений: 72
в общем пришлось сделать не так красиво, как хотелось бы
arr = new Array();
arr[[0, 1]] = 1;
arr[[0, 2]] = 2;
arr[[1, 1]] = 3;
arr[[1, 2]] = 4;
arr[[2, 1]] = 5;
arr[[2, 2]] = 6;
for (i=0; arr[[i, 1]]!=undefined; i++) {
trace(arr[[i, 1]]+" "+arr[[i, 2]]);
}

Старый 11.11.2005, 14:00
gun 242 вне форума Посмотреть профиль Отправить личное сообщение для gun 242 Найти все сообщения от gun 242
  № 28  
Ответить с цитированием
gun 242

Регистрация: Aug 2000
Сообщений: 72
напиши какой механизм на твой взгляд правельный

Старый 11.11.2005, 14:04
andr64 вне форума Посмотреть профиль Отправить личное сообщение для andr64 Посетить домашнюю страницу andr64 Найти все сообщения от andr64
  № 29  
Ответить с цитированием
andr64
 
Аватар для andr64

Регистрация: Sep 2005
Сообщений: 65
Отправить сообщение для andr64 с помощью ICQ
Цитата:
Сообщение от gun 242
в общем пришлось сделать не так красиво, как хотелось бы
arr = new Array();
arr[[0, 1]] = 1;
arr[[0, 2]] = 2;
arr[[1, 1]] = 3;
arr[[1, 2]] = 4;
arr[[2, 1]] = 5;
arr[[2, 2]] = 6;
for (i=0; arr[[i, 1]]!=undefined; i++) {
trace(arr[[i, 1]]+" "+arr[[i, 2]]);
}
так не пойдет, 2 послений пропадут:
Код:
arr = new Array();
arr[[0, 1]] = 1;
arr[[0, 2]] = 2;
arr[[1, 1]] = 3;
arr[[1, 2]] = 4;
arr[[2, 1]] = 5;
arr[[2, 2]] = 6;
//
arr[[7, 1]] = 75;
arr[[7, 2]] = 76;
//
for (i=0; arr[[i, 1]] != undefined; i++) {
	trace(arr[[i, 1]]+" "+arr[[i, 2]]);
}

Старый 11.11.2005, 14:09
gun 242 вне форума Посмотреть профиль Отправить личное сообщение для gun 242 Найти все сообщения от gun 242
  № 30  
Ответить с цитированием
gun 242

Регистрация: Aug 2000
Сообщений: 72
поэтму этот вариант и некрасивый.
но в моём случае он подходит т.к. весь массив заполнен.

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:47.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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