【问题标题】:Escape dollar sign in JavaScript template literals (template strings)JavaScript 模板文字(模板字符串)中的转义美元符号
【发布时间】:2016-10-28 20:40:06
【问题描述】:

我正在使用 JavaScript ES6 Docs Here 的新模板文字(模板字符串)语法,但我不太确定如何转义用于破坏字符串以添加参数的美元符号。

这是我想要做的:

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 文档,但我在其中找不到任何关于它的信息,希望有人知道如何解决这个问题

【问题讨论】:

  • $${title} 不工作?
  • 不,试过了,如果你放 $$ 字符串不会中断
  • 在 Firefox 48 中为我工作。
  • 您的设置/转译器/环境是什么?它适用于我的 Chrome 和节点
  • 这实际上可能对未来的用户有所帮助,我确认这确实不适用于 Visual Studios 中的智能,它肯定显示语法错误

标签: javascript ecmascript-6 template-literals


【解决方案1】:

这行得通。

<v-btn :href="mail">
   Send Mail
</v-btn>
const mail = 'mailto:berkaynayman4@gmail.com'

【讨论】:

  • 如果您有新问题,请点击 按钮提出问题。如果有助于提供上下文,请包含指向此问题的链接。 - From Review
【解决方案2】:

在美元符号前放一个反斜杠是我想到的第一件事,它有效:

\${DEPLOYMENT_NAME}

【讨论】:

    【解决方案3】:

    这对我有用。

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

    【讨论】:

      【解决方案4】:
      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.`
      

      【讨论】:

      • 如果我能让它工作,我会撤消反对票,它在 chrome 浏览器中无法使用 iis express .net
      • 这是一个视觉工作室和 reshaper 搞砸了抱歉
      • @ScottSelby 检查更新的答案。两者都在 Chrome 上工作。
      • 这是 Visual Studios 不喜欢的问题,我只是想删除问题,但我会留下它,以便您获得一些分数,当它允许我时我会接受
      • @zerkms - 他只添加了斜线,因为我错误地告诉他它不起作用,就像我说我要删除这个问题,因为它对未来的用户没有好处,但我让你保分
      【解决方案5】:

      $ 不产生文字 $ 的唯一情况是在 { 之前,否则您不需要转义它。

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

      因此确实有效。如果您需要转义任何内容,反斜杠 \ 也是模板字符串中的转义字符,因此(虽然不必要)以下内容也可以:

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

      【讨论】:

      • 这是我的本地环境的问题,它阻止它编译甚至进入浏览器,但你是对的,它在浏览器中运行良好
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-08-16
      • 1970-01-01
      • 1970-01-01
      • 2015-09-14
      • 2015-05-24
      相关资源
      最近更新 更多