powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Косвенная адресация в javascript
25 сообщений из 38, страница 1 из 2
Косвенная адресация в javascript
    #39360247
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно, вопрос звучит так:
- как в JS обратиться к содержимому (прочитать или изменить его) переменной, имя которой заранее неизвестно, но известно, что оно будет находиться в другой (известной) переменной?
Например, в некоем цикле от 1 до 9 программно формируются имена переменных:
Код: plaintext
 stroka1,...,stroka9; 
и сразу после формирования каждого имени - в переменную с этим именем следует дописывать некую накапливающуюся строку. Затем, после этого цикла в дальнейшем тексте программы нужно будет ещё пару раз обратиться к содержимому каждой такой переменной. Наверное, для такого обращения - лучше будет загнать созданные вышеупомянутые имена переменных в промежуточный массив.
Можно ли это сделать средствами JS? Подскажите, пожалуйста.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360254
Var79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не хочу давать плохих советов, потому спрошу, зачем переменные?
еще вопрос, а к чему еще можно обратится кроме как к содержимому переменной?
лучше описать задачу, чем выдумывать странное решение задачи
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360259
Var79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я не вчитывался что вам надо, но может типа такого
Код: javascript
1.
2.
3.
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.push("Kiwi");
var energy = fruits.join(" and ");
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360280
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360288
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neznajka
Код: plaintext
stroka1,...,stroka9;

мне кажется, всем этим "переменным" место в единственном массиве
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360299
Var79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир2012,

eval это тот самый вредный совет
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360323
Владимир2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Var79eval это тот самый вредный советНе безопасно ...
Совет не вредный.
У автора топик что имеется сайт который хакеры мечтают сломать?
Скорее всего пока нет ...
А когда подучится, то во всем сам разберется.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360327
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Var79,
Может и странное - но каждый решает проблемы, основываясь на каком-либо уже известном ему фундаменте. Мне известен именно такой, а фундамент JS я пока только изучаю, потому и спрашиваю здесь. Возможно, в JS есть и лучший способ.
Конкретнее - примерно так. В цикле формируются имена нумерованных переменных (возможно лучше - ассоциативный массив), в которых будет накапливаться HTML-код, формируемый в том же цикле. Сам код представляет из себя самодостаточные элементы WEB-страницы. В дальнейшем после цикла - в зависимости от внешних условий все (или некоторые) эти элементы будут выводиться посетителю на странице в том или ином порядке.
Ещё более конкретно - пытаюсь сформировать сейчас на тестовой площадке. Как оформлю более-менее вразумительно - выложу ссылку.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360329
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neznajkaНапример, в некоем цикле от 1 до 9 программно формируются имена переменных:
Код: plaintext
 stroka1,...,stroka9; 
и сразу после формирования каждого имени - в переменную с этим именем следует дописывать некую накапливающуюся строку. Затем, после этого цикла в дальнейшем тексте программы нужно будет ещё пару раз обратиться к содержимому каждой такой переменной.
Для решения таких задач есть массивы...
neznajka- как в JS обратиться к содержимому (прочитать или изменить его) переменной, имя которой заранее неизвестно, но известно, что оно будет находиться в другой (известной) переменной?
Для всего остального есть объекты. Там под разными "ключами" можно хранить разное содержимое.
И обращение к ключам возможно по имени

Код: javascript
1.
2.
3.
4.
5.
var obj={
   test: 'Пример'
};
var key='test';
alert(obj[key]);
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360336
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa, СПАСИБО!
Блин, я как-то об объектах и не подумал...
Кажется, это мне подойдёт :)
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360337
Var79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neznajka,

не нужны никакие нумерованные переменные, я же приводил код

Код: javascript
1.
2.
3.
4.
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.push("Kiwi");
var energy = fruits.join(" and "); //  или fruits.join() если без разделителя 
alert(energy);
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360340
Var79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neznajka,

у объектов нет .join()
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360366
nicholaos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не всегда можно использовать массивы. Например, из page.evaluate нельзя вернуть массив. В таком случае используют JSON-сериализацию.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360402
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To all:
М-да... Я тут подумал более тщательно - а может мне и вправду не стОит именно такой "огород" городить? Может, всё решается более просто...
Короче, задумка возникла следующая.
На странице имеется 2 древовидных раскрывающихся списка - раскрытие и оформление работают нормально и не имеют отношения к сути вопроса, поэтому привожу лишь html-код в "голом виде".
Если скопировать данный код в полнооконный редактор, то можно увидеть, что он очень даже регулярный. Т.е. - этот код запросто можно сформировать в цикле (т.к. все цифровые значения этого дерева тоже вычисляются несложной формулой, которую легко привязать к шагу цикла). Но есть 2 существенных момента:
1) код деревьев хоть и несложен, но достаточно объёмен, особенно - 2-е дерево (оно длиннее, но структурно - такое же, и потому я его не привожу);
2) необходимость показа 1-го или 2-го дерева на странице - появляется далеко не всегда и зависит от действий пользователя (захочет ли он изменить предложенное по-умолчанию, или захочет ли он ввести нужное ему значение вручную, или же предпочтёт выбрать стандартное значение из списка);
Вот и возникла идея - не гонять с сервера такой нечасто требуемый но легко формируемый html-код, а формировать его на стороне клиента только в случае необходимости.
Вот и подыскиваю способ сделать это "поизящнее" :)
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360427
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neznajka,
можно пригнать масимальный код только обин раз
и прятать не нужное через display=none
присваивая это определённым классам.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360451
mage.lan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neznajka,

Используйте шаблоны, например {{handlebars}} .

Описываете как будет строится дерево по типовой структуре, в момент когда дерево нужно скармливаете шаблону данные, он генерит html, который внедряете в страницу.

Ханделбарсы рекомендую именно потому что решение проверено, используется в некоторых фреймворках и отучает говнокодить в шаблоне, т.е. сразу привыкаете к правильной философии. При наличии сборщика шаблоны могут быть сразу перекомпилированы в js файл.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360479
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To вадя:
Я до сих пор так и делал. Но - хочу развиваться дальше :)

To mage.lan:
Спасибо! Я про такие компилируемые шаблоны не знал.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360486
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mage.lanИспользуйте шаблоны, например {{handlebars}} .
+1
интересная ссылка
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360495
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neznajkakrvsa, СПАСИБО!
Блин, я как-то об объектах и не подумал...
Забавно :)

Объекты в JavaScript сочетают в себе два важных функционала.

Первый – это ассоциативный массив: структура, пригодная для хранения любых данных...

https://learn.javascript.ru/object
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360502
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360549
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, skyANA, - только не так быстро и обильно, пожалуйста: не успеваю переваривать :)
Шутка.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360609
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЯ до сих пор так и делал. Но - хочу развиваться дальше :)
если только для развития, а так для нормальной работы это павильное решение. всё остальное от лукавого.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360633
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяавторЯ до сих пор так и делал. Но - хочу развиваться дальше :)
если только для развития, а так для нормальной работы это павильное решение. всё остальное от лукавого.
угу. Давай опять на 20 страниц.
Первый п.п. флейма выполнен. Фраза ни о чём произнесена.
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360642
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,
как по-ть ты всегда найдёшь повод,
а на практический вопрос ответь 19967295
...
Рейтинг: 0 / 0
Косвенная адресация в javascript
    #39360736
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяPetro123,
как по-ть ты всегда найдёшь повод,
а на практический вопрос ответь 19967295
вроде ты выше пытался про архитектуру и шаблонизацию что то сказать).
...
Рейтинг: 0 / 0
25 сообщений из 38, страница 1 из 2
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Косвенная адресация в javascript
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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