【发布时间】:2015-06-15 08:03:04
【问题描述】:
我有一个局部变量名作为字符串,需要获取它的值。
variable = 22
"variable".to_variable?
如何从字符串中获取值22?
【问题讨论】:
标签: ruby local-variables
我有一个局部变量名作为字符串,需要获取它的值。
variable = 22
"variable".to_variable?
如何从字符串中获取值22?
【问题讨论】:
标签: ruby local-variables
binding.local_variable_get("variable")
# => 22
【讨论】:
您可以使用eval。
variable = 22
eval("variable")
# => 22
但是eval can be nasty。如果你不介意声明一个实例变量,你也可以这样做:
@variable = 22
str = "variable"
instance_variable_get("@#{str}")
# => 22
【讨论】:
eval,直接用Binding#local_variable_get即可。
使用eval()方法:
variable = 22
eval "variable" #"variable".to_variable?
# => 22
【讨论】:
eval,直接用Binding#local_variable_get即可。