Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 双引号内引号的JSON解析_Javascript_Json - Fatal编程技术网

Javascript 双引号内引号的JSON解析

Javascript 双引号内引号的JSON解析,javascript,json,Javascript,Json,我的值是一个字符串: "['Eitaj', 'Jason Json', 'Eitaj M', "Jason Json's"]" 我正在尝试使用JSON.parse()解析它, 然而,我得到了一个错误 未捕获的SyntaxError:JSON中位置1处的意外标记 我发现正确的工作字符串是: JSON.parse('["Eitaj", "Jason Json", "Eitaj M", "Jason Json\'s"]') 除了把单引号和双引号放在一起,还有什么技巧可以使用吗?检查一下这是否适用于

我的值是一个字符串:

"['Eitaj', 'Jason Json', 'Eitaj M', "Jason Json's"]"
我正在尝试使用
JSON.parse()
解析它, 然而,我得到了一个错误

未捕获的SyntaxError:JSON中位置1处的意外标记

我发现正确的工作字符串是:

JSON.parse('["Eitaj", "Jason Json", "Eitaj M", "Jason Json\'s"]')

除了把单引号和双引号放在一起,还有什么技巧可以使用吗?

检查一下这是否适用于您

let s=“['Eitaj'、'Jason Json'、'Eitaj M'、\'Jason Json's\””;
让parsed=JSON.parse(s.split(“,”).map(seg=>{
返回seg.replace(新的RegExp(“'.''”,“g”),函数(匹配){
返回'''+match.substring(1,match.length-1)+'';
})
}).加入(“,”);

console.log(已解析)检查这是否适合您

let s=“['Eitaj'、'Jason Json'、'Eitaj M'、\'Jason Json's\””;
让parsed=JSON.parse(s.split(“,”).map(seg=>{
返回seg.replace(新的RegExp(“'.''”,“g”),函数(匹配){
返回'''+match.substring(1,match.length-1)+'';
})
}).加入(“,”);

console.log(已解析)
您的第一个字符串无效。@Zenoo
“['Eitaj'、'Jason Json'、'Eitaj M'、\'Jason Json's\']”
,如果您最终需要提取单个名称(
Eitaj
Jason Json
),则将字符串另存为
“['Eitaj'、'Jason Json'、'Eitaj M'、'Jason Json'”]”
JSON
对象不会有多大帮助,因为您一开始就没有JSON。你对数据格式有控制权吗?@lvaroGonzález没有,这是我发布的来自其他系统的字符串。你确定它应该是JSON吗?因为如果使用单引号括住字符串,则不尊重ECMA-404或RFC7159。您的第一个字符串无效。@Zenoo
“['Eitaj'、'Jason Json'、'Eitaj M'、\'Jason Json's\'”]”
,如果您最终需要提取单个名称,将字符串另存为“['Eitaj'、'Jason Json'、'Eitaj M'、'Jason Json's”]”(
Eitaj
Jason Json
…)
JSON
对象不会有多大帮助,因为你一开始就没有JSON。你对数据格式有任何控制吗?@lvaroGonzález没有,正如我所发布的,它是来自其他系统的字符串。你确定它应该是JSON吗?因为如果它使用单引号来encl,它不尊重ECMA-404或RFC7159ose字符串。请小心,对于包含至少两个单引号的双引号中正确括起的值,例如
“Test'Test'Test”
…或带有逗号的名称(
'Acme,Inc.
)。已更新以处理上述流。未尝试处理其他边缘情况。但可能有许多其他情况。@chathurawidange对于我的约束来说,它是完美的。请小心,对于正确包含在双引号中且至少包含两个单引号的值,这注定会失败,例如
“Test'Test'Test”
…或带有逗号的名称(
'Acme,Inc.
)。已更新以处理上述流。未尝试处理其他边缘情况。但可能有许多其他情况。@chathurawidange对于我的约束,它是完美的。