Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Один объект - две функции / 12 сообщений из 12, страница 1 из 1
30.05.2007, 09:27
    #34559999
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
В одной функции я создаю объект:
Код: plaintext
1.
2.
3.
function doStart(){
	var map = new GMap2(document.getElementById("add_map"));
	...
}

Потом необходимо получить доступ к этому объекту из другой функции.
Код: plaintext
1.
2.
3.
function doEnd(){
	var name = map.name;
	...
}

Возможноли это сделать не передавая объект в function doEnd() как параметр:
Код: plaintext
1.
2.
3.
function doEnd(map){
	var name = map.name;
	...
}
И не объявляя объявляя объкт глобальным?


Спасибо.
...
Рейтинг: 0 / 0
30.05.2007, 09:42
    #34560035
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
Нет.
...
Рейтинг: 0 / 0
30.05.2007, 10:00
    #34560071
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
но ведь в JavaScript ко всем объектам можно обращаться через window.
...
Рейтинг: 0 / 0
30.05.2007, 10:53
    #34560250
vasa_c
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
Оффтоп

Код: plaintext
1.
2.
3.
4.
5.
6.
function doStart(x){
	var map = new GMap2(x);
}

doStart( 1 );
doStart( 2 );
doStart( 3 );

К какому из этих трех объектов должна получить доступ функция doEnd()?
...
Рейтинг: 0 / 0
30.05.2007, 10:57
    #34560285
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
Alex_BBB
Возможноли это сделать не передавая объект в function doEnd() как параметр:
Код: plaintext
1.
2.
3.
function doEnd(map){
	var name = map.name;
	...
}
И не объявляя объявляя объкт глобальным?


Спасибо.
Можно что-нибудь придумать (например передавать не как параметр, а как контекст) , а зачем оно надо?
...
Рейтинг: 0 / 0
30.05.2007, 11:42
    #34560495
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
LINUXER
Можно что-нибудь придумать (например передавать не как параметр, а как контекст) , а зачем оно надо?
Глобальные переменные использовать не хочется, а функция doEnd() вызывается по щелчку на кнопке.
Код: plaintext
<input type="button" value="Записать" onclick="doEnd()"/>

И передать объект таким образом нельзя
...
Рейтинг: 0 / 0
30.05.2007, 11:47
    #34560530
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
Глобальные переменные использовать не хочетсяА нормальный продукт сделать хочется?
...
Рейтинг: 0 / 0
30.05.2007, 11:48
    #34560538
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
Antonariy Глобальные переменные использовать не хочетсяА нормальный продукт сделать хочется?
http://joomlaportal.ru/content/view/1352/70/
...
Рейтинг: 0 / 0
30.05.2007, 11:49
    #34560549
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
Даже не нормальный а крутой :)
...
Рейтинг: 0 / 0
30.05.2007, 12:48
    #34560829
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
Alex_BBB
Глобальные переменные использовать не хочется, а функция doEnd() вызывается по щелчку на кнопке.
Код: plaintext
<input type="button" value="Записать" onclick="doEnd()"/>

И передать объект таким образом нельзя
А почему не хочется? много их или что. Всё решаемо

Ещё можно как-нибудь так
Код: plaintext
1.
2.
3.
4.
5.
function doStart(){
	var map = new GMap2(document.getElementById("add_map"));
	document._.___.onclick=function(e){
		doEnd(map);
	}
}
...
Рейтинг: 0 / 0
30.05.2007, 13:37
    #34561058
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
LINUXER , спасибо!
Пока всетаки сделал глобальный объект.
(Их не много - только один, но в идеале-то вообще без глобяльных переменных)
...
Рейтинг: 0 / 0
30.05.2007, 15:38
    #34561629
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Один объект - две функции
Alex_BBB LINUXER , спасибо!
Пока всетаки сделал глобальный объект.
(Их не много - только один, но в идеале-то вообще без глобяльных переменных)
doStart, doEnd - уже глобальные
для библиотек, конечно, чем их меньше, тем лучше
но уж один глобальный всегда нужен
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
//lib
function MyCoolLib(){...}
//usage
var lib=new MyCoolLib();
lib.doStart();
lib.loadMap(...);
alert(lib.map)
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Один объект - две функции / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]