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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.01.2010, 22:38
bas784 вне форума Посмотреть профиль Отправить личное сообщение для bas784 Найти все сообщения от bas784
  № 1  
Ответить с цитированием
bas784

Регистрация: Jan 2010
Сообщений: 91
По умолчанию Функция поиска в отсортированом масивве

Необходима функция поиска для массива Array
Есть ли она? И как её реализовать для 6-ого плеера?
То-еесть могу и сам написать но может у вас есть наработки какие-нибудь!!
Как говорится зачем изобретать велосипед?
Заранее спасибо за помощь!

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

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Код AS1/AS2:
function searchInArray(arr, obj){
    for(var i in arr){
        if(arr[i] == obj){
            return i
        }
    }
    return -1
}
Типа такой? Для шестого плеера подойдет и так:
Код AS1/AS2:
Array.prototype.search = function(obj) {
	for (var i in this) {
		if (this[i] == obj) {
			return i;
		}
	}
	return -1;
};
var a = ["a", "b", "c"];
trace(a.search("b"));
__________________
hauts.ru


Последний раз редактировалось Hauts; 18.01.2010 в 22:53.
Старый 18.01.2010, 22:59
bas784 вне форума Посмотреть профиль Отправить личное сообщение для bas784 Найти все сообщения от bas784
  № 3  
Ответить с цитированием
bas784

Регистрация: Jan 2010
Сообщений: 91
хм но здесь простой перебор! Мне нужно что нибудь пооптимальней
Функция очень критична для исполнения скрипта!
А комп слабый

Старый 18.01.2010, 23:03
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 4  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Цитата:
Сообщение от bas784 Посмотреть сообщение
хм но здесь простой перебор! Мне нужно что нибудь пооптимальней
Функция очень критична для исполнения скрипта!
А комп слабый
Переходите на AS3.0 в таком случае.

Старый 18.01.2010, 23:05
bas784 вне форума Посмотреть профиль Отправить личное сообщение для bas784 Найти все сообщения от bas784
  № 5  
Ответить с цитированием
bas784

Регистрация: Jan 2010
Сообщений: 91
С радостью но не могу привязан к 6-ому

Старый 18.01.2010, 23:07
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 6  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Цитата:
Сообщение от bas784 Посмотреть сообщение
С радостью но не могу привязан к 6-ому
Ну тогда перебором

Старый 18.01.2010, 23:08
bas784 вне форума Посмотреть профиль Отправить личное сообщение для bas784 Найти все сообщения от bas784
  № 7  
Ответить с цитированием
bas784

Регистрация: Jan 2010
Сообщений: 91
Мда чувствую нароботок не у кого нету придётся шерстить Кнута

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

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
А какие еще могут быть наработки? Расскажите?

Зачем вам шестой плеер, когда уже есть десятый?

Что вы намерены сделать для шестого плеера, учитывая, что вам нужно что-то найти в массиве, но простой перебор является критичным?
__________________
hauts.ru


Последний раз редактировалось Hauts; 18.01.2010 в 23:35.
Старый 18.01.2010, 23:40
bas784 вне форума Посмотреть профиль Отправить личное сообщение для bas784 Найти все сообщения от bas784
  № 9  
Ответить с цитированием
bas784

Регистрация: Jan 2010
Сообщений: 91
А)массив большой !
Б)Функция вызывается часто при перерасчёте!
В)Компьютер слабый
Г) Помимо плеера на нем лежат другие более важные задачи
Д) Заличензирован только 6-ой
И т д и т п
этот список можно продолжать .....

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

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Я вас понял. Можно попробовать присваивать ключ к объекту, и уже смотреть существование ключа в объекте, а не перебор массива. Например, так:
Код AS1/AS2:
Array.prototype.addForSearch = function(obj, key) {
	if (this.keysObject == undefined) {
		this.keysObject = {};
	}
	//key = (!key) ? obj : key;
	this.push(obj);
	this.keysObject[key] = {id:this.length-1};
	return this.length;
};
Array.prototype.searchByKey = function(key, returnObject) {
	if (!this.keysObject) {
		return -1;
	}
	if (this.keysObject[key] != undefined) {
		if (this[this.keysObject[key].id] != undefined) {
			if (returnObject) {
				return this[this.keysObject[key].id];
			}
			return this.keysObject[key].id;
		}
	}
	return -1;
};
var someArray = []
someArray.addForSearch({text:"One"}, 1)
someArray.addForSearch({text:"Two"}, 2)
someArray.addForSearch({text:"Three"}, 3)
someArray.addForSearch({text:"Four"}, 4)
someArray.addForSearch({text:"Five"}, 5)
 
trace(someArray.searchByKey(3)) // Второй номер в массиве, третий элемент
trace(someArray.searchByKey(3, true).text) // Вернет объект по ключу
В общем, исходя из конкретной задачи, можно придумать, как организовать поиск в массиве. Если известно, что в нем хранится (объекты, числа, строки?).
__________________
hauts.ru


Последний раз редактировалось Hauts; 19.01.2010 в 08:29.
Создать новую тему Ответ Часовой пояс GMT +4, время: 15:14.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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