javascript - 在javascript中设置动态变量名

标签 javascript arrays variables dynamic

我试图让我的代码看起来更漂亮一些,该函数可能有 16 个参数,并使用这些参数执行大量重复代码。

这里有一些示例代码来演示我的问题:

function foo(varList, a, b, c, d, e, f, ...) {
  varList.map(bar => {
    console.log('Result: ' + bar);
  }
}

const vars = ['b', 'd', 'f'];
foo(vars, 0, 1, 2, 3, 4, 5);  

结果

b, d, f

我实际上正在尝试访问这些变量名称中的数据,因此它应该打印:

1, 3, 5

有没有一种方法可以动态地使用这样的变量?

最佳答案

正如 @alfasin 回答的那样,只需使用 JavaScript Objects 的力量即可。对象由键值对组成,其中每个key是一个字符串,对应的value可以是任意JavaScript对象。

对于您的示例代码,您可以简单地编写:

const vars = {'b': 1, 'd': 3, 'f': 5};

要访问某个对象键的值,可以编写 vars.bvars['b'] 来访问 b 的值例如,code>(即 1)。

关于javascript - 在javascript中设置动态变量名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57532303/

相关文章:

javascript - HTML 表单上的默认提交按钮是如何确定的?

javascript - 如何计算构造函数javascript中的对象数

第二次提交时忽略 Javascript PreventDefault()

javascript - 一个对象包含一个对象集合 - 每个对象都有一个 id 和名称,我如何将它们分开?

sql - 具有基于 ORDER BY 的 Limit/Rownum 的 Oracle JSON_ARRAYAGG

python - "i"语句中的 "for"变量在函数内部有效吗?

javascript - Angular JS : binding a click event after angular renders HTML DOM

ios - 我有 2 个数组。如果在两个数组中都找到,则需要从其中一个数组中删除字符串

python - 不断收到未定义的全局名称错误

javascript - 对象内的函数导致错误