当哈希是对象中的私有变量时,如何获取哈希值?

时间:2013-10-05 15:04:22

标签: ruby hash

对不起,伙计们,编辑我所看到的......

我有以下对象:

我处于调试模式,所以这是我能看到的:

Object
  |
  |- @hash = Hash (2 elements)
  |    |
  |    |- element_1->value_1
  |    |- element_2->value_2
  |
  |- @raw
  |- @@action

我想返回@hash的值,具体而言我想输出element_1=value_1element_2=value_2

的值

我尝试了以下内容:

Object.attributes  
=> undefined method 'attributes'

Object.instance_variables 

只返回@hash@raw的名称,但@hash为空,它不包含元素和值的预期值:S

我知道如何获得它的价值吗?

1 个答案:

答案 0 :(得分:0)

在盯着水晶球后我会尝试

Object.new.element_array_1.entries

编辑:在你的问题更新后仍然不清楚

  • 不知道你在说什么调试模式。它不看 就像标准调试模块的输出一样。

  • Object的
  • instance_variables方法只返回变量名 符号,仅此而已,您如何知道@hash是否为空?

  • 如果在实例变量之间列出@hash,您可以直接使用Object.instance_variable_get :@hash或使用Object.new.instance_variable_get :@hash
  • 的初始化实例检索其值