【问题标题】:How to pass a single quote around a javascript variable? [closed]如何在 javascript 变量周围传递单引号? [关闭]
【发布时间】:2023-01-21 01:46:43
【问题描述】:

我有一个 javascript 代码,如下所示,我想在其中传递一个 javascript 变量 attribute 的单引号。

问题陈述:

我想知道我需要在 A 行进行哪些更改,以便我能够在单引号中传递 javascript 变量。

在 A 行,我做了这个 `'${attribute}'` 但我在参数列表后收到错误 Uncaught SyntaxError: missing )。

【问题讨论】:

  • 如果将整个字符串放在双引号或反引号中,则无需为嵌入的单引号做任何特殊操作。
  • 这不是模板文字的工作方式。它应该看起来像confirm(`Are you sure you want to delete '${attribute}'?`)

标签: javascript


【解决方案1】:

看起来你是使用template literal,但过于复杂了:

confirm(`Are you sure you want to delete  '${attribute}'  ?`)

请注意在整个模板文字周围使用反引号,这在语法上允许您在文字本身中使用您喜欢的任何引号。

【讨论】:

    【解决方案2】:

    您应该使用模板文字 (`) 而不是单引号 (') 在 A 行的单引号中传递 javascript 变量属性。 您可以更改以下内容:

     if(confirm('Are you sure you want to delete  `'${attribute}'`  ?')){
    

    对此:

     if(confirm(`Are you sure you want to delete  '${attribute}'  ?`)){
    

    在上面的代码中,${attribute} 是模板文字语法,允许您将变量直接嵌入到字符串中,并在脚本运行时将其替换为它的值。

    【讨论】:

      【解决方案3】:

      您需要将整个字符串放在反引号内,然后您就不必再“转义”单引号了。

      confirm(`Are you sure you want to delete  '${attribute}'  ?`)
      

      【讨论】:

      • 这不会产生预期的结果;它使用字符串“TEST”而不是变量attribute
      • 将 TEST 替换为 ${attribute} 即可,这实际上是您的代码,但带有固定的反引号。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-08
      • 1970-01-01
      • 2021-11-14
      • 2021-12-20
      • 1970-01-01
      相关资源
      最近更新 更多