简体   繁体   English

如何在JavaScript中调用数组时使用变量作为键进行调用

[英]how to call with variable as key while an array called in javascript

this works 这有效

for (var i=1; i<=queueconf.limit; i++)
{

  var filename=queueconf['jobs']['queue1']['name'];
}

but, this does not work 但是,这不起作用

for (var i=1; i<=queueconf.limit; i++)
{

  //as queue+i
  var filename=queueconf['jobs']['queue'+i]['name'];

  var qfile=require("./jobs/"+filename);
}

why? 为什么? error : TypeError: Cannot read property 'name' of undefined 错误:TypeError:无法读取未定义的属性“名称”

it sees an error like above code 它看到类似上面的代码的错误

It is possible that not all queues ( queues1 to queuesn ) are available in queueconf['jobs'] . queueconf['jobs']可能并非所有queuesqueues1queuesn )都可用。

try this fail-safe 试试这个故障保险

for (var i=1; i<=queueconf.limit; i++)
{
  var queue = queueconf['jobs']['queue'+i];
  if ( queue )
  {
    var filename = queue['name'];
    var qfile = require("./jobs/"+filename);
  }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM