当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。