你能用模板文字从插值表达式中提取var名称吗?

时间:2017-08-15 13:11:48

标签: javascript

如果我有像

那样的var
myVar = `Some text with ${eggs} and ${noodles} or ${pies}`;

有没有办法在var替换之前将myVar作为未处理的字符串,基本上是“有些文本用$ {eggs}和$ {noodles}或$ {pies}”?

具体来说,我希望能够在里面动态生成一个带有var名称(鸡蛋,面条,馅饼)的数组。我有许多不同的myVars,我想避免显式输出数组。

1 个答案:

答案 0 :(得分:0)

template literals开始,您无法将变量从文字字符串中取回。

我建议使用动态方法与数组或其他结构化数据组织,而不是使用一组固定的变量。



var getText = (...a) => `Some text with ${a[0]} and ${a[1]} or ${a[2]}`;

console.log(getText('foo', 'bar', 'baz'));
console.log(getText('eggs', 'noodles', 'pies'));