sort_keys -> bool | ProcRuby 4.1 から[permalink][rdoc][edit]sort_keys=(value)-
生成する JSON 形式の文字列で、オブジェクト(ハッシュ)のキーを並べ替えるかどうかを取得・設定します。
valueに真を指定すると、キーを昇順に並べ替えます。Procを指定すると、ハッシュ全体を引数としてそのProcを呼び出し、返り値のハッシュをそのままの順序で使用します。これにより任意の並べ替えができます。偽を指定すると並べ替えを行いません(デフォルト)。- [PARAM]
value: -
真偽値または
Procを指定します。 - [EXCEPTION]
TypeError: -
valueが真偽値でもProcでもない場合に発生します。
require "json" state = JSON::State.new(sort_keys: true) p JSON.generate({b: 1, a: 2}, state) # => "{\"a\":2,\"b\":1}" state2 = JSON::State.new(sort_keys: ->(hash) { hash.sort_by { |k, v| -v }.to_h }) p JSON.generate({a: 1, b: 2}, state2) # => "{\"b\":2,\"a\":1}"[SEE_ALSO] JSON::State.default_sort_keys_proc=
- [PARAM]