我知道问题很多次,我经历了所有的问题。但他们都没有帮助我的情况。我有一个对象字面值,对于其中一个属性,我指定了一些具有反斜杠字符的字符串,但在读取属性时,反斜杠会被截断。
我想在JSON.Stringify方法中使用此对象文字。根据JSON,不允许使用反斜杠。我们需要逃脱它。有什么办法吗?
我无法修改数据以添加额外的反斜杠,因为数据来自服务器。 '本地主机\ SQLSERVER'。之后我需要更换它。
对象文字
var data={
s:'localhost\sqlserver'
}
function replaceToUpper(value) {
return value.replace(/\\n/g, "\\n")
.replace(/\\'/g, "\\'")
.replace(/\\&/g, "\\&")
.replace(/\\r/g, "\\r")
.replace(/\\t/g, "\\t")
.replace(/\\b/g, "\\b")
.replace(/\\f/g, "\\f");
}
//读取数据
alert(replaceToUpper(data.s));
尝试2:
var values =JSON.stringify(data); // here that backslash getting trucunated
我在这里缺少什么。检查小提琴Object Literal with Backslash
我无法修改数据以添加额外的反斜杠,因为数据来自服务器。 '本地主机\ SQLSERVER'。之后我需要更换它。我知道添加额外的黑色标签会对我有所帮助。但我无法修改数据。
答案 0 :(得分:2)
使用\\来逃避\
var data = { s:'localhost \\ sqlserver'}
JSON.parse(JSON.stringify(数据))
答案 1 :(得分:1)
答案 2 :(得分:0)
在将JSON作为字符串保存到db或使用REGEX
之前// use this to avoid redirects when a user clicks "back" in their browser
window.location.replace('http://somewhereelse.com');
// use this to redirect, a back button call will trigger the redirection again
window.location.href = "http://somewhereelse.com";