首页 > 解决方案 > 如何设置带有撇号和引号的 javascript 变量(无法转义!)

问题描述

我目前正在从事一个无法访问其服务器端的项目。我所能做的就是从他们的模板编辑器中检索博客数据,但似乎没有办法使用他们的模板语法来转义 HTML。这很糟糕,但我需要在 javascript 变量中分配 HTML 以创建 Json 数据。

在 Python 中,您可以同时使用撇号和引号,而无需通过使用三个撇号将其转义:

example = ''' 
            this '/ is great! ""Wahjhahaha
          '''

在 Javascript 中是否有任何等效的方法?正如我所提到的,我无法转义 HTML 数据。

标签: javascriptescaping

解决方案


有几种方法取决于你想要做什么。

您可以在双引号内使用单引号。

您可以在单引号内使用双引号。

如果要在双引号内使用双引号,则必须\在元素前使用反斜杠 ( )。这同样适用于单引号

console.log('This is double quote inside single quote "');
console.log("This is single quote inside double quote '");
console.log('This is single quote inside single quote \'');
console.log("This is double quote inside double quote \"");
console.log('\' " " \'');
console.log("' \" \" '");

编辑

你需要使用函数replace()

var str = "Using single quotes ' ' sdsd 'sd 'dssd sdf' 'sdf'";
str = str.replace(/'/g, "\\'");
console.log(str);

同样,您可以使用双引号。

或者,您可以使用反引号,但我不推荐它(IE11 中的反引号

console.log(`Here you can use both ' single and " double quotes without backslashes`);


推荐阅读