如何通过将自定义标识符设置为变量名来创建变量

时间:2018-03-27 12:31:39

标签: javascript angularjs variables ecmascript-6

这看起来很疯狂,但它是我的应用程序解决动态初始化问题的急需解决方案......

当我动态注入服务时,我希望它由我自己的与服务匹配的变量来识别。

这是>我想要的。

$rootScope.arr = ['MasterLookupService', 'PrinterService'];

for (i = 0; i < arr.length; i++) {

  var arr[i] = $injector.get(arr[i]);

}

// it will end up something like this 

var MasterLookupService = $ injector.get(&#39; MasterLookupService&#39;);

我试过但没人帮忙

   // $rootScope.customObj = {
   //    MasterLookUpService: $injector.get('MasterLookupService'),
   //    PrinterService: $injector.get('PrinterService')
   // }

1 个答案:

答案 0 :(得分:0)

我不确定Jquery,但这可能是我理解你需要的。

var arr = ['MasterLookupService', 'PrinterService'];

for(var i =0 ;i < arr.length; i++){
    var varname = arr[i];
    window[varname] = 'value '+i;
}

alert(MasterLookupService);

window对象表示包含DOM文档的窗口。您可以根据您的环境使用其他对象。