Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вопрос про scope (https://javascript.ru/forum/misc/10067-vopros-pro-scope.html)

B~Vladi 17.06.2010 23:44

Цитата:

Сообщение от Gvozd
замыкание под эти требования все также подходит.

Где же подходит? Можно демку?
Цитата:

Сообщение от Gvozd
чем оно вам не нравится?

Если не сложно - давай на ты?

Gvozd 18.06.2010 00:51

Цитата:

Сообщение от B~Vladi
Можно демку?

все ваши требования соблюдены
var global=1;
(function(){
var local=2;
window.fn=function(){
alert(global);
alert(local);
}
})()
fn();

Цитата:

Сообщение от B~Vladi
Если не сложно - давай на ты?

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

B~Vladi 18.06.2010 14:37

Ну я всё равно не смогу добавить переменную local2 в scope анонимной функции, после её выполнения...

e1f 18.06.2010 15:35

Цитата:

Сообщение от B~Vladi (Сообщение 60034)
Ну я всё равно не смогу добавить переменную local2 в scope анонимной функции, после её выполнения...

B~Vladi, а Вам действительно нужно именно это? ;) Как вариант -- добавляйте свойства прототипу функции.

B~Vladi 18.06.2010 19:46

Цитата:

Сообщение от e1f
B~Vladi, а Вам действительно нужно именно это?

Хм.
Ну вот представь глобальную область видимости. Хочу такую же, только свою. Но чтобы в глобальной не было моих переменных.
А тобой можно на ты?
Цитата:

Сообщение от e1f
Как вариант -- добавляйте свойства прототипу функции.

Ну это не кошерный вариант.

e1f 18.06.2010 19:54

B~Vladi, а Ваш вириант кошерен? Давайте тогда уточнять, что же вы подразумеваете под "своей областью видимости". Приводите пример из имеющихся языков программирования :)

Gvozd 18.06.2010 20:08

Цитата:

Сообщение от B~Vladi
Ну я всё равно не смогу добавить переменную local2 в scope анонимной функции, после её выполнения...

Цитата:

Сообщение от B~Vladi
Да, я не правильно выразился. Мне не нужно определять несуществующие свойства...

вы уж определитесь что ли?

B~Vladi 18.06.2010 21:23

Ты ты ты ты ты:)
А не вы:)

Я то определился.
Есть некая область видимости, из которой доступна глобальная (ну само собой).
Есть 2 фронта.
Первый фронт - мой. Из этого фронта я должен определять свои переменные, доступные только из этой "некой" области видимости, но не из глобальной. Необходимо, чтобы я в любой момент мог определить любую переменную с нужным мне именем.
Второй фронт - вражеский. Из него можно получить доступ к переменным, определённым в первом фронте, просто обращаясь по имени (как к document, без указания window в глобальной области). Из этого же фронта нельзя определить свои переменные, разве что если они попадут в глобальную область - ничего страшного.
Задачка не тривиальная, поэтому собсно и был создан этот сабж. У меня конечно же есть свои наработки, но пока не 100% того что я хочу.
Сори, если кого ввел в заблуждение. Мне проще на словах рассказать.

Kolyaj 19.06.2010 08:56

B~Vladi,
шаблонный движок чтоле?

B~Vladi 19.06.2010 11:41

Цитата:

Сообщение от Kolyaj
шаблонный движок чтоле?

Это как?:)


Часовой пояс GMT +3, время: 03:11.