首页 > 解决方案 > 使用模板字符串定义变量

问题描述

是否可以使用模板字符串创建变量?这是我想要实现的一个简单示例:

    let times, hours="fullTime";

    if (hours === "fullTime") {
        times = ["Day", "Night"];
      } else {
        times = ["Day"];
      }

      times.forEach((time) => {
        const `${time}shift` = "8 hours";
      }

      console.log(DayShift);

日志:“8小时”

我希望每次 forEach 循环迭代时都定义一个具有不同名称的新变量。

谢谢

标签: javascriptvariablesecmascript-6template-strings

解决方案


当然,只需将它们存储在一个对象中。只需将键添加到对象。

let times, hours = "fullTime";

if (hours === "fullTime") {
  times = ["Day", "Night"];
} else {
  times = ["Day"];
}

let variables = {};

times.forEach((time) => {
  variables[`${time}shift`] = "8 hours";
});

console.log(variables);
console.log(variables.Dayshift);


推荐阅读