使用webpack调用动态变量而不使用eval

时间:2016-09-26 22:54:22

标签: javascript webpack

我正在尝试移动旧版javascript代码以使用webpack。遗憾的是,我发现在旧版javascript中,使用' window [VAR_NAME]'动态引用变量的旧方法不再适用于webpack。我知道使用' eval(VAR_NAME)'可以使用,但如果对象不存在则会出现异常,这与“窗口[VAR_NAME]'可以检查null的方法。有没有更好的方法在webpack中动态调用变量?

以下javascript代码停止在webpack中工作:



var item1 = 'dog';
var item2 = 'cat';
var item3 = 'mouse';

$(document).ready(function() {
  CallAnimals();
});

function CallAnimals(i) {
  if (i == null) {
    i = 1;
  }
  var currentAnimal = window['item' + i];
  if (currentAnimal) { //can check for null here
    alert(currentAnimal);
    CallAnimals(i + 1);
  }
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;

0 个答案:

没有答案