删除显式JavaScript反斜杠转义
我一直在寻找解决方案,我希望这不是一项晦涩难懂的任务,但我还没有找到一个有效的解决方案。也许我对我所经历的以及为什么会这样做的看法根本上是错误的,但我当然想借用一些眼睛来观察它,并深入了解为什么 任务 打印文本字符串删除显式JavaScript反斜杠转义,javascript,asp.net-web-api,escaping,Javascript,Asp.net Web Api,Escaping,我一直在寻找解决方案,我希望这不是一项晦涩难懂的任务,但我还没有找到一个有效的解决方案。也许我对我所经历的以及为什么会这样做的看法根本上是错误的,但我当然想借用一些眼睛来观察它,并深入了解为什么 任务 打印文本字符串console.log('\\u0027\\u0027\\u0027\\u0027\\u0027') 作为''” 我得到的是'\u0027\u0027\u0027\u0027' 我知道这是由显式转义引起的,但是如何转换或删除双反斜杠以获得所需的结果呢 范围详细信息 我正在从.NET
console.log('\\u0027\\u0027\\u0027\\u0027\\u0027')代码>
作为''”
我得到的是'\u0027\u0027\u0027\u0027'
我知道这是由显式转义引起的,但是如何转换或删除双反斜杠以获得所需的结果呢
范围详细信息
我正在从.NET web api后端返回一个集合,并使用System.web.HttpUtility.JavaScriptStringEncode
对集合进行编码,它将在JavaScript中为任何找到的特殊字符返回显式的双反斜杠值
编辑
后端模拟示例
public ActionResult GetDictionary()
{
var collection =
this.service.Get()
.OrderBy(x => x.Name)
.Select(x =>
new Item()
{
Name = x.Name,
PreviewData = System.Web.HttpUtility.JavaScriptStringEncode(x.PreviewData),
Description = System.Web.HttpUtility.JavaScriptStringEncode(x.Description)
})
.ToList();
return this.Json(collection, JsonRequestBehavior.AllowGet);
}
可能看起来有点黑客味,但如果你想保持简短:
var myValue = '\\u0027\\u0027\\u0027\\u0027';
console.log( JSON.parse( '"' + myValue + '"' ) );
JSON.parse需要双引号,这是其中唯一不起眼的部分。可能看起来有点骇人听闻,但如果您想保持简短,那么:
var myValue = '\\u0027\\u0027\\u0027\\u0027';
console.log( JSON.parse( '"' + myValue + '"' ) );
JSON.parse需要双引号,这是其中唯一不恰当的部分。能否提供.NET后端的相关部分?如果只删除一个斜杠控制台.log('\u0027\u0027\u0027\u0027')@RyanE,这样行吗?@scniro你想用single\替换\\吗?如果没有,我将删除我的。@cbuckley backend example posted能否提供.NET后端的相关部分?如果只删除一个斜杠控制台.log('\u0027\u0027\u0027\u0027')@RyanE,这样行吗?@scniro你想用single\替换\\吗?如果没有,我将删除我的。@cbuckley backend example posted OP希望在服务器端删除它们,这可能会更明智,但将来可能会有其他人从中受益(同样的问题,但无法访问服务器端)。啊,很好。我需要的是双引号。谢谢@Ingmars OP希望在服务器端删除它们,这当然会更明智,但将来可能会有其他人从中受益(同样的问题,但无法访问服务器端)。啊,太好了。我需要的是双引号。谢谢@Ingmars