我担心这个问题有一个非常简单的答案,但我已经尝试了一段时间寻找解决方案而没有任何运气。
我有一个非常长的字符串,它通常包含分号(;),双引号和单引号等字符,也许还有其他字符,如果不进行转义可能会有害。
当我尝试运行我的JavaScript代码时,它会出现错误“Uncaught SyntaxError:Unexpected identifier”,当我检查Unexpected Identifier是什么时,它是分号或引号,这是事情的结束字符串。
在PHP中,有一些内置函数可以对探测器进行文本渲染,因此不会造成损害并阻止代码中断。 JavaScript中有什么相同的东西吗?我知道我可以只替换字符,但问题是我并不总是知道字符串包含哪些字符,因此一个更“通用”的函数来处理转义有害字符将非常有用。
答案 0 :(得分:1)
当您从后端渲染页面时,调用您需要清理字符串。听起来你需要逃避引号,所以你的字符串不会过早结束。
基本上是这样的字符串
var foo = "asdkjhsadjkhsadjkhsajkdhsajkdhksajhd"sajkdhsakdjhsajkdhsajkdh";
需要逃避“用a。
var foo = "asdkjhsadjkhsadjkhsajkdhsajkdhksajhd\"sajkdhsakdjhsajkdhsajkdh";
并且不会发生JavaScript错误。
你还必须小心新线。那些你必须用'\ n'替换