Javascript 如何转义对象中的所有双引号
我有很多HTML标记,它们在我的代码中被硬编码为字符串。我想将它们移动到一个单独的模块中,这样我就可以将它们作为变量使用 当我使用JSON.parse(HTMLTags)解析对象时,我得到了一个错误 JSON中意外的令牌x 我知道这是因为双引号,我知道我可以用反斜杠来逃避它们。但是这太多了,因为它们有很多标签。还有别的办法吗Javascript 如何转义对象中的所有双引号,javascript,html,json,Javascript,Html,Json,我有很多HTML标记,它们在我的代码中被硬编码为字符串。我想将它们移动到一个单独的模块中,这样我就可以将它们作为变量使用 当我使用JSON.parse(HTMLTags)解析对象时,我得到了一个错误 JSON中意外的令牌x 我知道这是因为双引号,我知道我可以用反斜杠来逃避它们。但是这太多了,因为它们有很多标签。还有别的办法吗 export const HTMLTags = `{ "h1s": { "greating1": "<h1 id="ms1" class="ms
export const HTMLTags = `{
"h1s": {
"greating1": "<h1 id="ms1" class="ms">ABC</h1>",
"greating2": "<h1 id="ms2" class="ms">XYZ</h1>",
.
.
.
.
.
"greatingx": "<h1 id="msX" class="ms">QWE</h1>"
}
}`;
export const HTMLTags=`{
“h1s”:{
“greating1”:“ABC”,
“greating2”:“XYZ”,
.
.
.
.
.
“greatingx”:“QWE”
}
}`;
问题在于属性的引号中。源字符串本身无效:
const HTMLTags=`{
“h1s”:{
“greating1”:“ABC”,
“greating2”:“XYZ”,
“greatingx”:“QWE”
}
}`;
log(JSON.parse(HTMLTags))代码>问题存在于属性的引号中。源字符串本身无效:
const HTMLTags=`{
“h1s”:{
“greating1”:“ABC”,
“greating2”:“XYZ”,
“greatingx”:“QWE”
}
}`;
log(JSON.parse(HTMLTags))
使用JSON.stringify()
将它们导出为字符串,导入后使用JSON.parse()
以对象的形式返回。是否所有您感兴趣的标记都是HTML字符串的问候语,如代码中所示?使用JSON.stringify()将它们导出为字符串
导入它们后,使用JSON.parse()
以对象的形式返回。是否所有您感兴趣的标记都是HTML字符串,就像那里的代码一样?我会尝试替换飞行中的引号,因为数据源不清楚(它是获取的?它是本地字符串?),我不确定必须修复它。如果它是从服务获取的字符串,那么在服务上修复它可能比通过regext转义更好。regex工作得很好。这些数据只是我需要在js代码中使用的html标记。它包含SVG、视频、h1和许多其他内容。非常感谢@Mosèraguzzinitis Regex在Chrome上运行良好,但在任何其他浏览器上都无法运行。由于lookbehind(?我会尝试替换fly上的引号,因为数据源不清楚(它是获取的?它是本地字符串?)我不确定在哪里需要修复。如果它是从服务获取的字符串,也许在服务上修复它比通过RegExt转义更好。regex工作得很好。这些数据只是一种html标记,我需要在我的js代码中使用它们。它包含SVG、视频、h1和许多其他内容。非常感谢@Mosèraguzzinitis regex在Chrome上工作得很好,但是不在任何其他浏览器上。由于向后看(?)?