Untitled

 avatar
unknown
plain_text
2 years ago
744 B
2
Indexable
require 'json'
require 'ostruct'

json_data = '{"name": "Tham Davies", "age": 27, "city": "Pleiku"}'

# Mặc định sẽ parse sang kiểu Hash, key là string
user_data = JSON.parse(json_data)
p user_data # {"name"=>"Tham Davies", "age"=>27, "city"=>"Pleiku"}
puts user_data['name'] # Tham Davies

# với option symbolize_names: true thì key sẽ là symbol
user_data = JSON.parse(json_data, symbolize_names: true)
p user_data # {:name=>"Tham Davies", :age=>27, :city=>"Pleiku"}
puts user_data[:name] # Tham Davies

# Parse sang class chỉ định, ở đây là OpenStruct
user_data = JSON.parse(json_data, object_class: OpenStruct)
p user_data # #<OpenStruct name="Tham Davies", age=27, city="Pleiku">
puts user_data.name # Tham Davies
Editor is loading...
Leave a Comment