高级 Ruby 特性深度解析
1. 动态代码执行
在 Ruby 中,作为一种动态的解释型语言,它具备动态执行代码的能力,这主要通过 eval 方法来实现。以下是一些示例:
eval "puts 2 + 2"
# 输出
4
这里需要注意,虽然屏幕上显示了 4 ,但 4 并非整个 eval 表达式的返回值,因为 puts 总是返回 nil 。若要让 eval 返回 4 ,可以这样操作:
puts eval("2 + 2")
# 输出
4
下面是一个更复杂的示例,涉及字符串和插值:
my_number = 15
my_code = %Q{#{my_number} * 2}
puts eval(my_code)
# 输出
30
eval 方法的作用是执行传入的代码并返回结果。第一个示例让 eval 执行 puts 2 + 2 ,第二个示例则利用字符串插值构建了 15 * 2 表达式,然后进行求值并通过 puts
超级会员免费看
订阅专栏 解锁全文
63

被折叠的 条评论
为什么被折叠?



