我有一个字符串
"{'name':'xyz'}","{'name':'PQR'}"
我需要删除它应该是
的双引号{'name':'xyz'},{'name':'PQR'}
我可以删除双引号,但最终结果总是如下格式
"{'name':'xyz'},{'name':'PQR'}"
我希望最终结果应该只是
{'name':'xyz'},{'name':'PQR'}
想法很有用
答案 0 :(得分:15)
使用以下代码,您可以从字符串中删除双引号:
var test = "\"House\"";
alert(test);
alert(test.replace(/\"/g, ""));
答案 1 :(得分:9)
通过将当前对象转换为字符串然后使用eval
函数来解决,工作解决了谢谢。
var eventlist = JSON.stringify(eventresult.d);//Jsonresult
var eventstring = new String();
eventstring = eventlist.toString().replace(/"/g, "");
eval(eventstring );
答案 2 :(得分:1)
尽管您可以解决该问题,但问题在于您要检索的字符串。
不是字符串格式的JSON对象。您说它来自$ .post,那么它不应该是
{'name':'xyz'}","{'name':'PQR'}
它不是任何JS对象的json字符串表示形式。
当您尝试在调用后的任何变量中分配此变量时,它将仅将第一个字符串分配给varibale:
var a = {'name':'xyz'}","{'name':'PQR'}
查看结果。
所以首先要问的是有效字符串。 JS对象的有效字符串表示形式可以是:两个对象组成的数组
"[{'name':'xyz'}","{'name':'PQR'}]"
然后只需解析此字符串版本的json对象即可在其中返回JS对象
JSON.parse(your string representation retrieved from server)
答案 3 :(得分:0)
Vipin不要尝试给var a = eval(stringname)赋值,它将再次将其视为字符串直接使用eval函数,我知道使用eval不是一个好主意,但有时很方便 仅仅是一个示例服务器字符串是有效字符串。
答案 4 :(得分:0)
执行以下操作以实现它,
1)将您的 JSON.stringfy值放入变量,
例如var strLink = JSON.stringify(offerObj[i].language[countData].cta);
2)现在将 VARIABLE放入JSON.parse
例如JSON.parse(strLink);