因此,我感兴趣的是发现JSON.stringify将RegExp简化为空对象文字(fiddle):

JSON.stringify(/^[0-9]+$/) // "{}"

Is this behavior expected? I realize that a RegExp is an object with no properties to serialize. That said, dates are objects too; yet JSON.stringify() manages to produce a meaningful string:

JSON.stringify(new Date) // "2014-07-03T13:42:47.905Z"

I would have hoped that JSON would give RegExp the same consideration by using RegExp.prototype.toString().

推荐答案

是的,因为JSON中没有正则表达式对象的规范表示.因此,它只是一个空对象.

edit-好的,现在是2018年;建议使用.toJSON()等的解决方案的答案可能是好的,尽管我会用以下命令将该方法添加到原型中

Object.defineProperty(RegExp.prototype, "toJSON", {
  value: RegExp.prototype.toString
});

and so on. That ensures that the function name isn't enumerable, which makes the monkey-patch somewhat more hygienic.

Json相关问答推荐

使用Circe将嵌套字段添加到杨森

JOLT规范:转移到现有数组

Google Page to JSON应用程序脚本出现CORS错误

属性错误:';ActivitiesClient';对象没有属性';base_url';

如何将具有相同 struct 的多个JSON文件中的对象数组合并成一个数组?

使用 JQ 获取 JSON 中的替代元素(输出:JSON 对象)

在这种情况下我如何实现 UnmarshalJSON 并且只为一个接口字段定义特殊行为?

父键中的 Perl JSON 数组

ORA-01422: 精确提取返回的行数超过了与 json 对象组合的请求数

Oracle Apex - 将 JSON 对象分配给变量以返回

将哈希表转换为 json 后,Powershell 缺少数组

如何用 Xidel 正确读取这个 JSON 文件?

Powershell JSON 操作

在 JSON 字符串中react i18n 换行符

Django - 异常处理最佳实践和发送自定义错误消息

如何使用 Newtonsoft.Json 包在 C#(4.0) 中解析我的 json 字符串?

如何将有向无环图 (DAG) 存储为 JSON?

使用 Python 3 读取 JSON 文件

将 javascript 对象或数组转换为 json 以获取 ajax 数据

如何从 jQuery ajax 调用将复杂对象传递给 ASP.NET WebApi GET?