Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.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/2/jquery/76.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 jQuery中的正则表达式挡板(1.5.2)_Javascript_Jquery_Regex_Json - Fatal编程技术网

Javascript jQuery中的正则表达式挡板(1.5.2)

Javascript jQuery中的正则表达式挡板(1.5.2),javascript,jquery,regex,json,Javascript,Jquery,Regex,Json,在发出jQuery AJAX请求后,我得到了一个“无效JSON”。这个请求代码并不重要,所以我选择省略它 我深入研究了jQuery库,并剥离了相关代码,这些代码汇总到下面的代码片段中 那么,既然我的请求返回一个字符串“{'x':'1'}”,为什么在处理它的过程中,jQuery应该返回“{'x':']}” 你可以在 此外,还会发生以下转换: '{x:12}' --> '{x:]}' '{"x":"12"}' --> '{],]}' 我猜有人可以向我解释为什么正则表达式会这样做,但我也

在发出jQuery AJAX请求后,我得到了一个“无效JSON”。这个请求代码并不重要,所以我选择省略它

我深入研究了jQuery库,并剥离了相关代码,这些代码汇总到下面的代码片段中

那么,既然我的请求返回一个字符串“
{'x':'1'}
”,为什么在处理它的过程中,jQuery应该返回“
{'x':']}

你可以在

此外,还会发生以下转换:

'{x:12}' --> '{x:]}'
'{"x":"12"}' --> '{],]}'
我猜有人可以向我解释为什么正则表达式会这样做,但我也很好奇jQuery为什么会这样做


如果您有任何帮助,我们将不胜感激。

您的JSON字符串格式不正确,原因如下:


您必须使用双引号,您的JSON字符串的格式不正确,原因如下:


您必须使用双引号

从外观上看,jQuery正在用']'替换任何无效的JSON标记。有些东西,如“null”、“true”、“false”等可以不加引号地插入。事实上,数字也可以

您的JSON无效,因为您需要双引号值。因此,要么:

{"x": 1}


应该有用。您复制的代码仍然会破坏这一点,但是通过jQuery.parseJSON()将其抛出对我来说很好。

从外观上看,jQuery正在用']'替换任何无效的JSON标记。有些东西,如“null”、“true”、“false”等可以不加引号地插入。事实上,数字也可以

您的JSON无效,因为您需要双引号值。因此,要么:

{"x": 1}


应该有用。您复制的代码仍然会破坏这一点,但是通过jQuery.parseJSON()将其抛出对我来说很好。

谢谢您的建议。我想我一定在做傻事。使用格式正确的JSON,一切都很好。我想我一定在做傻事。使用格式正确的JSON,一切都很好
{"x": "1"}