我有一个字符串
var myString = "[{"portal.home":"Home"},{"displaytag.tracking.id":"Item ID"}]";
我希望输出为
myString = '[{"portal.home":"Home"},{"displaytag.tracking.id":"Item ID"}]';
我有一个字符串
var myString = "[{"portal.home":"Home"},{"displaytag.tracking.id":"Item ID"}]";
我希望输出为
myString = '[{"portal.home":"Home"},{"displaytag.tracking.id":"Item ID"}]';
如果创建带有双引号的字符串,则其中不能包含未转义的双引号。
你不能写
var myString = "A "B" C";
那将是一个语法错误。然而,
var myString = "A \"B\" C";
与以下内容完全相同:
var myString = 'A "B" C';
的结果值myString
将完全相同。这不像第一个示例将在最终字符串中包含任何转义标记。转义只是为了帮助创建字符串,A "B" C
在这两种情况下都将是 ; 记录时通常用双引号括起来,表示类型是字符串。
所以如果你运行console.log(myString);
它会说"A "B" C"
,但值是myString
简单的A "B" C
。这只是开发人员工具如何表示字符串的结果。字符串本身并没有说明它是用双引号创建的。开发人员工具同样可以用特殊颜色记录值,但是用双引号括起来恰好是表示字符串的传统方式。
你可以这样做.slice()
:
var newString = "'" + myString.slice(1, -1) + "'";
或使用正则表达式:
var newString = myString.replace(/^"|"$/g, "'");