Javascript 转换为JS对象
如何将其转换为JS对象:Javascript 转换为JS对象,javascript,json,connect-flash,Javascript,Json,Connect Flash,如何将其转换为JS对象: {"info":["Image has been added"],"success":["No success Sorry!"]} parse抛出一个错误并说“不是有效的JSON”。我是JS新手,不知道如何处理这个问题 我正在使用express中的connect flash将flash消息传输到客户端。为此,我使用以下代码:
{"info":["Image has been added"],"success":["No success Sorry!"]}
parse抛出一个错误并说“不是有效的JSON”。我是JS新手,不知道如何处理这个问题
我正在使用express中的connect flash将flash消息传输到客户端。为此,我使用以下代码:
if Object.keys(locals.flashes).length !== 0
script.
flashArr="#{JSON.stringify(locals.flashes)}"
在客户端,对象的表示形式不是有效的JSON。如何处理此问题。如何将其转换为JS对象? 如果我这样尝试,它会返回有效的JS对象。我只是用
“
全局替换了”
,然后像这样解析它
invalid_data='{“info”:[“图像已添加”],“成功”:[“没有成功,抱歉!”]};
有效数据=无效数据。替换(/“/g,”);
console.log(JSON.parse(valid_data));
如何将其转换为JS对象?
如果我这样尝试,它会返回有效的JS对象。我只是用“
全局替换了”
,然后像这样解析它
invalid_data='{“info”:[“图像已添加”],“成功”:[“没有成功,抱歉!”]};
有效数据=无效数据。替换(/“/g,”);
log(JSON.parse(有效的_数据))代码>正如建议的那样,您需要将HTML实体解析为字符,即将“
转换为”
。最简单的方法是使用正则表达式:
var str='{“info”:[“图像已添加”],“成功”:[“没有成功,抱歉!”]};
var obj=JSON.parse(str.replace(/“/g,”);
控制台日志(obj)代码>正如建议的那样,您需要将HTML实体解析为字符,即将“
转换为”
。最简单的方法是使用正则表达式:
var str='{“info”:[“图像已添加”],“成功”:[“没有成功,抱歉!”]};
var obj=JSON.parse(str.replace(/“/g,”);
控制台日志(obj)代码>无法复制,此处没有错误{“info”:[“图像已添加”],“success”:[“no success Sorry!”]}
这已经是一个有效的js对象,不需要转换。您发布的内容中没有,
,因此显然您发布的内容不是您正在使用的内容-“
是被称为的HTMLEntity。”
当我使用JSON.stringify(locals.flash)并在客户端获取变量时,出现了一个错误。然后,当使用JSON.parse(flashArr)时,我得到了一个错误:不,它不是,这是发送/接收后发生的情况(不确定是哪个端在执行此操作)。。。通过var x=document.createElement('div')检查这一点;x、 innerHTML='{“信息”:[“图像已添加”],“成功”:[“没有成功,抱歉!”]};console.log(JSON.parse(x.textContent))
-可能会对您有所帮助,但由于您显示的实际代码非常少,我无法做得更好无法复制,这里没有错误{“info”:[“Image has added”],“success”:[“no success Sorry!”}
这已经是一个有效的js对象,不需要转换您发布的内容中没有“
”,因此很明显,您发布的内容不是您正在使用的-“
是称为”的HTMLEntity。当我使用JSON.stringify(locals.flash)并在客户端获取变量时,会出现错误。然后,当使用JSON.parse(flashArr)时,我得到了一个错误:不,它不是,这是发送/接收后发生的情况(不确定是哪个端在执行此操作)。。。通过var x=document.createElement('div')检查这一点;x、 innerHTML='{“信息”:[“图像已添加”],“成功”:[“没有成功,抱歉!”]};console.log(JSON.parse(x.textContent))
-可能会对您有所帮助,但由于您实际显示的代码很少,我无法做得更好