gpt4 book ai didi

json - 我的 Node.js hubot 代码中出现奇怪的 JSON.parse 错误

转载 作者:太空宇宙 更新时间:2023-11-04 00:51:30 25 4
gpt4 key购买 nike

我正在 robots.hear 上解析消息:

robot.hear /^\[(.+)\]$/, (res) ->
json_string = res.match["input"]

try
params = JSON.parse json_string
console.log "success"
catch error
console.log "error"

结果如下:

[] -> 成功

[1,2,3] -> 成功

[true, false] -> 成功

["a": true] -> 错误 #bad 语法,如下面的答案中所述

['a': true] -> 错误 #bad 语法,如下面的答案中所述

["a","b"] -> error #使用正确的 JSON 语法添加示例[{"a":"b"}] -> 错误#使用正确的 JSON 语法添加了示例

简而言之,任何带有单引号或双引号的[格式正确?] json _string 都会引发错误。

最佳答案

["a": true]['a': true] 不是有效的 JSON。首先,JSON 只识别带双引号的字符串,所以第二个是直接输出的。然后,JSON 对象括在大括号中,例如 {"a": true},而不是像 ["a": true] 这样的括号;括号表示一个数组,而数组不能有键,所以这也是无效的 JSON。因此,JSON.parse 拒绝这些字符串是正确的。

关于json - 我的 Node.js hubot 代码中出现奇怪的 JSON.parse 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32169534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com