如何解决JavaScript中为字符串末尾加双引号时的语法报错问题
如何在JavaScript字符串末尾添加双引号而不触发语法错误?
这是个很常见的JavaScript字符串转义问题,我来帮你搞定:
你遇到的语法错误,核心原因是JavaScript把双引号"当作字符串的起始/结束标记——当你写"Company S.A. DE C.V.""时,第二个双引号会被解析成字符串的结束符,后面的内容就成了无意义的代码,自然会弹出“未终止的字符串字面量”错误。
解决方法有两种,任选其一就行:
方法1:转义双引号
在你想要显示的双引号前面加一个反斜杠\,这样JavaScript就会把它识别为字符串的内容,而不是边界标记:
document.getElementById("year").innerHTML = "All Rights reserved, ©" + n + " Company S.A. DE C.V.\"";
方法2:改用单引号包裹字符串
如果用单引号'来定义整个字符串,那么字符串内部的双引号就不需要转义,可以直接写:
document.getElementById("year").innerHTML = 'All Rights reserved, ©' + n + ' Company S.A. DE C.V."';
两种方法都能让最终渲染的文本末尾带上双引号,比如当n为2018时,会显示:
All Rights reserved, © 2018 Company S.A. DE C.V."
内容的提问来源于stack exchange,提问作者Pedro




