文章

💎 Hash 定义 Symbol 和 String 访问

在 Ruby on Rails 中使用 Hash 进行 Symbol 和 String 访问

在 Rails 开发中,你可以使用 with_indifferent_access 方法来创建一个 Hash,使其既可以使用 Symbol 调用也可以使用 String 调用。这样可以增加代码的灵活性,因为在 Rails 中,有些地方会返回 Symbol 类型的键,而有些地方则会返回 String 类型的键。

示例代码

1
hash = { "key" => "value" }.with_indifferent_access

现在,你可以这样调用这个 hash:

1
2
hash[:key]  # => "value"
hash["key"] # => "value"

这样无论是用 Symbol 还是 String 调用都会得到相同的结果。

本文由作者按照 CC BY 4.0 进行授权