使用名为like string的变量

时间:2019-10-19 11:07:55

标签: javascript

如何使用分配给字符串变量的名称获取声明为全局变量的变量?在此示例中,copyButtons具有data-field =“ html”,第二个data-filed =“ css”,依此类推。

const htmlArea = document.querySelector(".htmlCopy");
const cssArea = document.querySelector(".cssCopy");
const jsArea = document.querySelector(".jsCopy");

const copyButtons = document.querySelectorAll(".copyBtn");

copyButtons.forEach(function(el) {
  el.addEventListener("click", copyTextfield);
});

function copyTextfield() {
  const place = this.dataset.field+"Area";
  //use a variable named like place
}

1 个答案:

答案 0 :(得分:0)

使用window[varname]。实际上,“全局变量”绑定到window,而foo等效于window.foo等效于window['foo']。不过,您应该使用尽可能少的全局变量。将数据分配给具有明确定义范围的对象变量。使用somevar[...dynamic name... ]的访问将是相同的。