ruby – 转储JSON对象的首选方法是什么? to_json,JSON.generate还是JSON.dump?

我需要将一个哈希对象转储到 JSON,我想知道这三个中的哪一个,to_json,JSON.generate或JSON.dump,是首选方法.

我已经测试了这些方法的结果,它们是相同的:

> {a: 1,b: 2}.to_json
=> "{\"a\":1,\"b\":2}" 
> JSON.generate({a: 1,b: 2})
=> "{\"a\":1,\"b\":2}" 
> JSON.dump({a: 1,\"b\":2}"

解决方法

docs开始:

JSON.generate only allows objects or arrays to be converted to JSON Syntax. to_json,however,accepts many Ruby classes even though it acts only as a method for serialization

[JSON.dumps] is part of the implementation of the load/dump interface of Marshal and YAML.

If anIO (an IO-like object or an object that responds to the write method) was given,the resulting JSON is written to it.

相关文章

以下代码导致我的问题: class Foo def initialize(n=0) @n = n end attr_accessor :n d...
这是我的spec文件,当为上下文添加测试“而不是可单独更新用户余额”时,我得到以下错误. require 's...
我有一个拦截器:DevelopmentMailInterceptor和一个启动拦截器的inititializer setup_mail.rb. 但我想将...
例如,如果我有YAML文件 en: questions: new: 'New Question' other: recent: ...
我听说在RSpec中避免它,let,let !,指定,之前和主题是最佳做法. 关于让,让!之前,如果不使用这些,我该如...
我在Rails中使用MongoDB和mongo_mapper gem,项目足够大.有什么办法可以将数据从Mongoid迁移到 Postgres...