Как работать с динамическим именем переменной в javascript без eval()?

Пользователь

от willis.streich , в категории: JavaScript , 13 дней назад

Как работать с динамическим именем переменной в javascript без eval()?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от lori_jast , 10 дней назад

@willis.streich 

В JavaScript, можно работать с динамическими именами переменных, используя объект window. Для доступа к переменной, имя которой хранится в строковой переменной, можно использовать квадратные скобки и передать ей имя переменной в виде строки.


Например, если у вас есть строковая переменная varName, которая содержит имя переменной, к которой вы хотите получить доступ, вы можете сделать это следующим образом:

1
2
var varName = "myVariable";
var value = window[varName];


В этом примере, мы использовали объект window, который представляет глобальное окно браузера и содержит все глобальные переменные. Мы передали имя переменной в квадратных скобках в качестве строки и получили значение переменной.


Также, можно использовать объекты, в которых имена свойств являются динамическими. Например:

1
2
3
4
5
6
var obj = {
    myVariable: "Hello World!"
};

var varName = "myVariable";
var value = obj[varName];


В этом примере, мы создали объект obj и добавили в него свойство с динамическим именем myVariable. Затем мы получили доступ к свойству, используя квадратные скобки и передавая имя свойства в качестве строки.


Но важно помнить, что использование динамических имен переменных может усложнить отладку и усложнить читаемость кода. Поэтому необходимо использовать это только тогда, когда это действительно необходимо.