加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 获取局部变量的名称

发布时间:2020-12-16 19:27:08 所属栏目:百科 来源:网络整理
导读:开发与发展时调试,我有时希望我能写出一个倾倒名称,类型和类型的1-liner一堆变量的值.问题是我不知道如何访问变量的名称,如果我可以的话. 这是第一次尝试: foo = 1bar = "42"baz = Hash.new[foo,bar,baz].each do |v| puts "#{v.???} = (#{v.class}) #{v}"
开发与发展时调试,我有时希望我能写出一个倾倒名称,类型和类型的1-liner一堆变量的值.问题是我不知道如何访问变量的名称,如果我可以的话.

这是第一次尝试:

foo = 1
bar = "42"
baz = Hash.new

[foo,bar,baz].each do |v|
    puts "#{v.???} = (#{v.class}) #{v}"
    end

我希望这个程序的输出是这样的:

foo = (Fixnum) 1 
bar = (String) 42 
baz = (Hash) ...

我不知道是什么???应该在上面.可以这样做吗?

解决方法

foo = 1
bar = "42"
baz = Hash.new

%w(foo bar baz).each do |vn|
    v = eval(vn)
    puts "#{vn} = (#{v.class}) #{v}"
end

但是,如果你想要一个带有1个参数的方法,这当然不会对你有帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读