Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313

Имя области видимости

22.08.2016, 13:52. Показов 572. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите, как получить имя области видимости функции?
Т.е. допустим чтобы обратиться к глобальной переменной, можно обратиться так:
JavaScript
1
2
var p = 'test';
wondow['test']
А как такое сделать внутри функции?
Что-то типа такого:
JavaScript
1
functionname['test']
Это нужно для того, чтобы формировать имя переменной динамически.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.08.2016, 13:52
Ответы с готовыми решениями:

Области видимости переменных + функции
Всем добрый вечер. Небольшая теория (предисловие). Как нам известно в Java Script есть две области видимости это локальная и глобальная....

Понимание области видимости и смежных понятий
Имеем вот такой код: var a = 1; function b() { a = 10; console.log(a); // вернёт 10 return; function...

Вложенные $post и области видимости
Привет. Есть три таблицы, заказ - детали - поставки они вложены как матрешки, мне надо посчитать сколько в заказе поставок с stat = 36, но...

12
Эксперт JSЭксперт HTML/CSS
 Аватар для mrtoxas
3827 / 2677 / 1521
Регистрация: 12.07.2015
Сообщений: 6,672
Записей в блоге: 4
22.08.2016, 14:02
JavaScript
1
window.p
0
27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313
22.08.2016, 14:05  [ТС]
mrtoxas, как можно получить доступ к переменной из глобального объекта, если переменная p будет определена в функции?
0
Эксперт JSЭксперт HTML/CSS
 Аватар для mrtoxas
3827 / 2677 / 1521
Регистрация: 12.07.2015
Сообщений: 6,672
Записей в блоге: 4
22.08.2016, 14:07
JavaScript
1
2
3
4
function myFunc(){
var x = 1;
return x;
}
0
27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313
22.08.2016, 14:15  [ТС]
JavaScript
1
2
3
4
function somefunction(){
    var p='test';
    //здесь нужно получить доступ к переменной p
}
Добавлено через 1 минуту
mrtoxas, мне нужно иметь доступ к переменной без замыкания!
Разве я непонятно изложил суть?

Добавлено через 1 минуту
JavaScript
1
2
3
4
5
6
что-то типа такого
function somefunction(){
    var p='test',
         phello = 'hello world';
    var t = eval(p+'hello');
}
Добавлено через 5 минут
как ещё можно сделать var t = eval(p+'hello');, чтобы было похоже на window['p'] ?
0
48 / 87 / 11
Регистрация: 12.08.2013
Сообщений: 474
22.08.2016, 14:47
При вызове функции автоматически создаётся специальный объект, который хранит все локальные переменные функции, однако к нему нельзя обратиться так же как к свойствам глобального объекта, поэтому ответ на ваш вопрос: никак.
1
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
22.08.2016, 17:33
Цитата Сообщение от phpk Посмотреть сообщение
Разве я непонятно изложил суть?
изложили свой вопрос вы вполне понятно

просто ваш вопрос настолько лишён смысла, что любой ответ на него вас не устроит

по определению локальные переменные называются таковыми именно потому, что они "видны" только внутри функции, где они определены, и нигде более

а вы спрашиваете -- как сделать локальную переменную "видимой" в глобальном контексте?
0
27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313
22.08.2016, 20:28  [ТС]
Цитата Сообщение от kalabuni Посмотреть сообщение
просто ваш вопрос настолько лишён смысла, что любой ответ на него вас не устроит
мне нужно было узнать такое возможно или нет, да или нет.
отрицательный ответ меня устроил
Цитата Сообщение от kalabuni Посмотреть сообщение
а вы спрашиваете -- как сделать локальную переменную "видимой" в глобальном контексте?
я не говорил, что локальную переменную я собираюсь использовать глобально
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
22.08.2016, 20:50
Цитата Сообщение от phpk Посмотреть сообщение
я не говорил, что локальную переменную я собираюсь использовать глобально
ну да ... а это кто написал, тень Пушкина или всё-таки вы?
Цитата Сообщение от phpk Посмотреть сообщение
как можно получить доступ к переменной из глобального объекта, если переменная p будет определена в функции?
0
27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313
22.08.2016, 21:15  [ТС]
Цитата Сообщение от kalabuni Посмотреть сообщение
ну да ... а это кто написал, тень Пушкина или всё-таки вы?
нужно иногда хотя-бы понимать контекст того, где пишут и спрашивают.
В данном случае я не спрашивал, я ответил, что не возможно получить локальную переменную
Цитата Сообщение от kalabuni Посмотреть сообщение
изложили свой вопрос вы вполне понятно
наверно не очень, хотя я уже нашёл немного другой путь решения данной проблемы без контекста функции
0
Эксперт JSЭксперт HTML/CSS
 Аватар для mrtoxas
3827 / 2677 / 1521
Регистрация: 12.07.2015
Сообщений: 6,672
Записей в блоге: 4
22.08.2016, 21:16
phpk, поделитесь с нами
0
27 / 41 / 13
Регистрация: 15.05.2013
Сообщений: 1,313
22.08.2016, 21:23  [ТС]
Цитата Сообщение от mrtoxas Посмотреть сообщение
phpk, поделитесь с нами
там ничего сверхъестественного.
немного изменил алгоритм получения данных, засунул переменные в объект
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
23.08.2016, 00:58
Цитата Сообщение от phpk Посмотреть сообщение
данном случае я не спрашивал, я ответил
простите меня за то, что не разобрался
понимаете ли, в моей реальности предложение, заканчивающееся вопросительным знаком, называется "вопросом", а в вашем мире это, оказывается, как раз "ответ"
ещё раз прошу меня простить
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.08.2016, 00:58
Помогаю со студенческими работами здесь

Добавление класса блоку при его появление в области видимости окна браузера
Доброго времени суток При прокрутке страницы необходимо добавить блоку с class="block_scroll" класс anim Если блок на...

Области видимости
Если я запихиваю любые операции (в данном случае задание и заполнение массива); То далее не видит, не то что не заполненный массив, а...

Области видимости переменных
Скорее всего тут все происходит от незнания. Приведу скрипт. var couchbase = require('couchbase'); var cluster = new...

Области видимости переменных
Когда последняя инструкция в foo присваивает новое значение переменной x, компилятор решает, что это локальная переменная. Следовательно,...

Области видимости объектов
Здравствуйте. Подскажите, пожалуйста, по каким правилам объекты в java видны или соответственно не видны в пределах того или иного метода...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru