变量 JavaScript 中的变量

Variable within a variable javascript

本文关键字:变量 JavaScript      更新时间:2023-09-26

我需要从变量中调用变量。

我有一个名为 vmX_cores 的变量。我需要遍历我拥有的 vm 并动态调用该变量。

var vms = ["vm1", "vm2", "vm3"];
var totalVms = vms.length;
var vm1_cores = 2;
var vm2_cores = 4;
var vm3_cores = 8;
function ifScript() {
   if (totalVms == 0) {
      return 'done';
   } else {
      var curVM = vms[totalVms - 1];
      var variableToUse = curVM + '_cores';
      totalVms--;
      return 'notDone';
   }
}

当我调用 variableToUse 时,这将返回"vmX_cores",但我需要它返回数字而不是字符串。

全局

变量可作为全局对象的属性进行访问,全局对象的属性对浏览器window,对节点global。请参阅在严格模式下获取对未知环境中全局对象的引用

由于您具有变量/属性的名称,因此可以使用括号访问。

// This code works in ES3, ES5 and strict mode to get the global object
var globalObj = (function(){ return this || (1,eval)('this') })();
var variableToUse = curVM + '_cores';
var actualValue = globalObj[variableToUse]; 
您可以使用

window[vmX_cores]来获取该变量字符串的值。

例如: var x = window["vm1_cores"]

在您的情况下:

var x = window[variableToUse]