【问题标题】:Angular: Change String to variable [duplicate]Angular:将字符串更改为变量[重复]
【发布时间】:2016-06-29 13:41:37
【问题描述】:

抱歉,如果这很简单。我只是不知道该怎么做。在本网站上搜索如何动​​态更改变量并评估它们等,但无法弄清楚如何做我想要的。

问题:我有一个变量,我设置了一个值:

vm.toggleDrop = function($switchToggle){
        vm.switchValue = "switch"+$switchToggle;
        //Here 

    };

如果上面写着“这里”,我需要实例化一个新变量,如果上述语句的结果是什么,则该变量被称为; switch1 然后将其设置为 true 或 false 作为布尔值。例如:switch1 = false; 因此,再次,如果 $switchToggle 参数为“Test”,我需要动态创建一个名为 switchTest 的变量并将其设置为 true 或 false。

这样的事情可能吗? 谢谢大家

【问题讨论】:

标签: javascript angularjs variables


【解决方案1】:

类似的东西?(我为代码 sn-p 创建了 vm 变量,忽略它)

var vm = {};

vm.toggleDrop = function($switchToggle){
        vm.switchValue = "switch"+$switchToggle;
        vm[vm.switchValue] = 'whatever';
        console.log(vm);
    };

vm.toggleDrop('true');

此外,如果您不需要将变量附加到 vm 对象,最佳答案将是 @nastyklad 提供(使用 window[vm.switchValue]

【讨论】:

    【解决方案2】:

    类似这样的:

    function setVariable(name){
        var variableName = 'switch' + name;
        vm[variableName] = true;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-18
      • 1970-01-01
      • 1970-01-01
      • 2015-12-03
      • 1970-01-01
      相关资源
      最近更新 更多