Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Работа с переменной по имени из параметра (https://javascript.ru/forum/misc/41114-rabota-s-peremennojj-po-imeni-iz-parametra.html)

dougthehead 31.08.2013 22:49

Работа с переменной по имени из параметра
 
Помогите пожалуйста. Передаю в функцию текстовое название переменной. Как установить ей значение?
var x = false;

function setTrue(xName) {
xName = true;
}

setTrue('x');

BETEPAH 31.08.2013 23:10

var x = false;
function setTrue(xName) {
    eval(xName + '=true');  
}
setTrue('x');

dougthehead 31.08.2013 23:19

ВЕТЕРАН, спасибо! Весь мозг сломал. Знание - сила.

ruslan_mart 01.09.2013 06:01

Ну зачем же eval.

var x = false;

function setTrue(xName) {
   window[xName] = true;
}

setTrue('x');

edison 01.09.2013 13:12

ну в теории можно через объект ))) чтобы не использовать eval и был доступ не только к глобальному значению))
var p=Object ();
p.x=false;
function putparam(p,name){
p[name]=true;
}
console.log(p.x);
putparam(p,'x');
console.log(p.x);

function test(){
var p=Object ();
p.y=false;
console.log(p.y);
putparam(p,'y');
console.log(p.y);
}
test();


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