當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Ruby JSON.parse用法及代碼示例


本文簡要介紹ruby語言中 JSON.parse 的用法。

用法

parse(source, opts) → object

返回通過解析給定的 source 創建的 Ruby 對象。

參數source 包含要解析的字符串。

參數 opts(如果給定)包含用於解析的選項哈希。請參閱解析選項。

source 是 JSON 數組時,返回一個 Ruby 數組:

source = '["foo", 1.0, true, false, null]'
ruby = JSON.parse(source)
ruby # => ["foo", 1.0, true, false, nil]
ruby.class # => Array

source 是 JSON 對象時,返回 Ruby 哈希:

source = '{"a": "foo", "b": 1.0, "c": true, "d": false, "e": null}'
ruby = JSON.parse(source)
ruby # => {"a"=>"foo", "b"=>1.0, "c"=>true, "d"=>false, "e"=>nil}
ruby.class # => Hash

有關解析所有 JSON 數據類型的示例,請參閱解析 JSON。

解析嵌套的 JSON 對象:

source = <<-EOT
{
"name": "Dave",
  "age" :40,
  "hats": [
    "Cattleman's",
    "Panama",
    "Tophat"
  ]
}
EOT
ruby = JSON.parse(source)
ruby # => {"name"=>"Dave", "age"=>40, "hats"=>["Cattleman's", "Panama", "Tophat"]}

如果 source 不是有效的 JSON,則引發異常:

# Raises JSON::ParserError (783: unexpected token at ''):
JSON.parse('')

相關用法


注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 JSON.parse。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。