javascript - for循环中变量名可以由数组值决定吗?

标签 javascript function variables for-loop

是否可以在 for 循环中使用数组变量值作为新变量名(或者换句话说,方程的左侧是否可以由迭代中的预定义值确定)?

for (var i = 0; i < array.length; i++) {
    // we all know this is possible:
    blabla[i] = apple;
    // but I'm wondering if there's a way we can achieve this:
    example(someVar);
}

function example(name) {
   // [name] = banana;
   name = banana;
}

显然,我在上面的代码片段中执行此操作的方式,值 banana总是被分配给变量 name 。不太确定我该怎么做?

最佳答案

变量是全局对象(在浏览器中:窗口)或其他对象的属性。所以你可以这样做:

for (var i = 0; i < array.length; i++) {
   window[array[i]] = '[something]';
}

var someObj = {};
for (var i = 0; i < array.length; i++) {
   someObj[array[i]] = '[something]';
}

关于javascript - for循环中变量名可以由数组值决定吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17269106/

相关文章:

javascript - 如何编写一个实用函数,返回数组中 2 个元素之后的所有元素

excel - 如何在 Excel 中创建 "lock"(停止更新单元格)?

javascript - JavaScript 中 onclick 属性的变量范围

html - 如果HTML <audio>标签开始播放歌曲,则启动功能

c - 两个地点有什么区别?

php - 在 Woocommerce 中创建指向外部路由的链接

perl - 为什么 `|`(管道)上的拆分未按预期工作?

javascript - 如何在排除某些字符的同时对字符串进行正则表达式测试?

javascript - 如何在触发 Rails form_tag 提交操作之前将 MD5 应用于密码?

javascript - PreventDefault后提交表单并解除绑定(bind)