转义美元登录JavaScript模板文本(模板字符串)

转义美元登录JavaScript模板文本(模板字符串),javascript,ecmascript-6,template-literals,Javascript,Ecmascript 6,Template Literals,我正在使用JavaScript ES6的新模板文本(模板字符串)语法,我不太确定如何避开用于断开字符串以添加参数的美元符号 以下是我试图做的: var response = `I consent to my credit card being charged in the amount of $ ${ total } for the purchase of ${ item.title } and any applicable s

我正在使用JavaScript ES6的新模板文本(模板字符串)语法,我不太确定如何避开用于断开字符串以添加参数的美元符号

以下是我试图做的:

var response = `I consent to my credit card being charged in the amount of
                 $ ${ total } for the purchase of ${ item.title } and any
                 applicable sales tax.`
这很好用。。。但我真的不希望有那个空间
$${title}

这使得最终结果看起来像:

。。。购买的金额为25.99美元

我宁愿

。。。购买的金额为25.99美元


我想这没关系,或者很明显我可以使用仍然有效的旧方法,但如果知道如何解决这个问题就好了。我链接到了Mozilla文档,但我在那里找不到任何关于它的信息,希望有人知道如何解决这个问题。唯一一种情况是
$
不产生文本
$
是在
{
之前,否则你不需要逃避它

var response = `I consent to my credit card being charged in the amount of
                 $${ total } for the purchase of ${ item.title } and any
                 applicable sales tax.`
var response = `You have $${money}`
因此不起作用。如果需要转义任何内容,反斜杠
\
也是模板字符串中的转义字符,因此(尽管不必要)以下操作也可以起作用:

var response = `You have \$${money}`
这对我有用

var response = `You have \$\{money}`;

在美元符号前加上反斜杠是我想到的第一件事,它起作用了:

\${DEPLOYMENT_NAME}

$${title}
不工作?不,我试过了,如果你在Firefox 48中为我设置$$working,字符串不会断开。你的设置/transpiler/环境是什么?它在Chrome和Node上对我有效这实际上可能会帮助未来的用户,我确认这在Visual Studio的intellisence中确实不起作用,它肯定显示了语法错误你试过这个吗?或者你只是在猜测,我没有那么多的代表性,但我有足够的理由认为我试过的东西simpleI会撤销否决票如果我能让它工作,它在chrome浏览器和iis express中不工作。netit是一个视觉工作室和resharper的混乱sorry@ScottSelby检查更新的答案。都是w在Chrome上工作。@zerkms-他只是添加了斜杠,因为我错误地告诉他斜杠不起作用,就像我说我要删除这个问题,因为它对未来的用户没有好处,但我会让你记住这一点。我的本地环境有问题,它阻止了它的编译,甚至阻止了它进入浏览器,但是y你是对的,它在浏览器中运行良好