Javascript 创建变量并动态命名它们

Javascript 创建变量并动态命名它们,javascript,arrays,string,dynamic,Javascript,Arrays,String,Dynamic,假设我有一个这样的数组: var array = ['Apple','Orange','Banana','Melon']; 我想通过查看该数组来创建变量,如下所示: var apple; var orange; var banana; var melon; 如何在不使用对象的情况下实现这一点?在全局范围内,您可以使用窗口对象创建变量 var array = ['Apple','Orange','Banana','Melon']; array.forEach(e => window[e

假设我有一个这样的数组:

var array = ['Apple','Orange','Banana','Melon'];
我想通过查看该数组来创建变量,如下所示:

var apple;
var orange;
var banana;
var melon;

如何在不使用对象的情况下实现这一点?

在全局范围内,您可以使用
窗口
对象创建变量

var array = ['Apple','Orange','Banana','Melon'];

array.forEach(e => window[e.toLowerCase()] = e);

console.log(apple); // Apple

您始终可以这样做:

    var array = ['Apple','Orange','Banana','Melon'];
    for(var i = 0 ; i < array.length ; i++) 
        this[array[i].toLowerCase()] = 'something...';
var数组=['Apple'、'Orange'、'Banana'、'humber'];
对于(var i=0;i

如果您在一般范围
中,则此
窗口
,否则它是局部上下文

函数的局部范围,或全局范围?唯一可以这样做的地方是将它们添加为全局变量(bleuch),也可以作为
窗口
对象的属性访问。改为使用另一个对象。我打算创建全局变量。非常感谢,使用这个[variableName]=variableName解决了我的问题!不客气。很乐意帮忙;)