在以下打印$0
的方法中,第一种方法有效,而第二方则无效。为什么呢?
直接
puts "current $0 is #{$0}"
构建$0
变量名称(由javascript推动)
1.times {|i| puts "current $#{i} is #{$i}"}
答案 0 :(得分:3)
因为第二个正在寻找一个名为" $ i"的变量。不是" $ 0"
如果您想动态构建变量名称,则需要执行类似......
的操作1.times {|i| puts "current $#{i} is #{eval '$'+i.to_s}"}