gpt4 book ai didi

javascript - 如何安全地将 JS 字符串变量用双引号字符包裹起来?

转载 作者:行者123 更新时间:2023-11-29 10:54:43 26 4
gpt4 key购买 nike

显然,当您自己创建一个实际的字符串文字时,您自己会用反斜杠转义双引号字符。

var foo = "baz\"bat";

就像您使用其他一些控制字符一样,例如换行符和反斜杠。

var bar = "baz\\bat\nmynew line and a \"quote\" ";

但是如果您只是将现有变量包装在引号字符中,即将它提供给其他需要引号输入的系统,就会出现一些困惑。

显然,您必须转义字符串中任何潜在的双引号字符。

var doubleQuoteRe = /\"/g;
var quoted = "\"" + unquoted.replace(escaper, '\\\"') + "\"";

但是根据某些人的说法,您现在不得不担心转义变量中的文字反斜杠字符。换句话说,使用比我的小正则表达式大得多的锤子。但是我不明白为什么。

最佳答案

您可能希望避免转义您已经转义的引号-

String.prototype.inquotes=function(){
return '"'+this.replace(/(^|[^\\])"/g,'$1\\"')+'"';
}

关于javascript - 如何安全地将 JS 字符串变量用双引号字符包裹起来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2403572/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com