Javascript 从JSON编码的字符串中删除引号
我目前有一个JSON编码的字符串,它是通过从数组中输入值生成的,如下所示-Javascript 从JSON编码的字符串中删除引号,javascript,php,json,string,Javascript,Php,Json,String,我目前有一个JSON编码的字符串,它是通过从数组中输入值生成的,如下所示- "["{value: 97049}","{value: 84866}","{value: 39402}","{value: 30250}","{value: 33363}"]" 我需要将其转换为以下格式: "[{value: 97049},{value: 84866},{value: 39402},{value: 30250},{value: 33363}]" 谢谢。JS: $input = $json_var;
"["{value: 97049}","{value: 84866}","{value: 39402}","{value: 30250}","{value: 33363}"]"
我需要将其转换为以下格式:
"[{value: 97049},{value: 84866},{value: 39402},{value: 30250},{value: 33363}]"
谢谢。JS:
$input = $json_var;
$input = str_replace( '"', '', $input ); // strip em
$input = '"' . $input . '"'; // wrap back around
最好是从源头上解决这个问题。如果它应该是一个对象数组,在将每个数组元素添加到数组之前不要引用它们。您可以这样做:
var myQuotedJson = '"["{value: 97049}","{value: 84866}","{value: 39402}","{value: 30250}","{value: 33363}"]"';
var myUnquotedJson = myQuotedJson.replace(/"/, '');
var input = '"["{value: 97049}","{value: 84866}","{value: 39402}","{value: 30250}","{value: 33363}"]"';
output = '"' + input.replace('"','') + '"';
//Alerts your output
alert(output );
它们都不是JSON,也不包含JSON。(必须引用属性名称)第一个示例是字符串中的实际字符吗?完成后,是否需要在结果周围加引号?你想用javascript还是php编写代码?我怀疑他发布的是显示的
console.log()。它只是将引号括在一个字符串周围,它不会像代码中的字符串文字那样转义嵌入的引号。很抱歉把这一切弄得很模糊,我自学成才,很困惑。嗨,我设法把它整理好了。感谢所有的投入!你的答案很好,但是是用JS写的。OP不是在寻找PHP代码,还是我误解了?标签:javascript
,json
,string
,PHP
-ambigousDo你真的认为调用json.parse
会成功地输入吗?请看我上面的评论。嗨,我是在PHP中寻找的。很抱歉成为沃格,我对这一切都比较陌生。
var myQuotedJson = '"["{value: 97049}","{value: 84866}","{value: 39402}","{value: 30250}","{value: 33363}"]"';
var myUnquotedJson = myQuotedJson.replace(/"/, '');
var input = '"["{value: 97049}","{value: 84866}","{value: 39402}","{value: 30250}","{value: 33363}"]"';
output = '"' + input.replace('"','') + '"';
//Alerts your output
alert(output );