自從開始使用Ruby,唯一發現最不方便的就是Hash中鍵值的訪問需要用[]索引,而且字符型和符號性的也不能互通,今天突發想到爲什麼不自己實現一個,於是馬上動手,實現了一個Hash打開類覆蓋,當然是大神方法method_missing。
class Hash def method_missing(name) key = name return self[key] if self.key?(key) key=name.to_s return self[key] if self.key?(key) super end end
至於何時裝載,我是通過在congfig/initializers下面建立一個hash_extesion.rb。
當然如果key和Hash內置方法重名了,還是隻能試用[]訪問。