Javascript 防止向字符串中的特殊字符\n添加反斜杠
让我们以此为例:“----开始证书------\nMIID/TCCAuUCEQCxLmq67” 我想把这个字符串保留为这个字符串,因为我需要这个精确的字符串 但javascript方面的情况是,它显示为: “----开始证书------\\nMIID/TCCAuUCEQCxLmq67” 我相信这是预期的行为,\\n实际上是\n,因为额外的反斜杠允许javascript正确解释该字符串 问题是我正在使用JSON.stringify将一个对象作为字符串传递到我的API中,以存储此信息,而不使用额外的反斜杠 试图替换反斜杠,但它似乎又回来了。不太确定还有什么其他方法可以尝试。。感谢您的帮助,谢谢Javascript 防止向字符串中的特殊字符\n添加反斜杠,javascript,reactjs,regex,string,replace,Javascript,Reactjs,Regex,String,Replace,让我们以此为例:“----开始证书------\nMIID/TCCAuUCEQCxLmq67” 我想把这个字符串保留为这个字符串,因为我需要这个精确的字符串 但javascript方面的情况是,它显示为: “----开始证书------\\nMIID/TCCAuUCEQCxLmq67” 我相信这是预期的行为,\\n实际上是\n,因为额外的反斜杠允许javascript正确解释该字符串 问题是我正在使用JSON.stringify将一个对象作为字符串传递到我的API中,以存储此信息,而不使用额外的
简单的解决方案是用一个随机唯一的字符串/字符替换\n,如果您想保留带有/n的字符串,请在服务器端再次替换它
let result = "-----BEGIN CERTIFICATE-----\nMIID/TCCAuUCEQCxLmq67".replaceAll("\n", "SomethingUnique");
//结果是
-----开始证书------SomethingUniqueMIID/TCCAuUCEQCxLmq67
您只需将字符串替换为转义版本:
var x=“----开始证书------\nMIID/TCCAuUCEQCxLmq67”。替换(“\n”,“\\n”)
console.log(x)
据我所知,您调用了JSON.stringify
,它添加了额外的斜杠作为转义字符,但您希望它将字符保持为换行符\n
?JSON.parse
只能在客户端存在\\n
而不是\n
时进行解析。您用来解析json的服务器端语言/库是什么?您不在服务器上调用json.parse的原因是什么?@RyanWilson这是正确的,我想保持\n原样并将字符串存储在对象中。@Ramesh使用serverless+golang作为后端。这可能是我可能需要尝试的最后解决方案!谢谢如果它是字符串的对象,我认为它不起作用