ruby - 如何使用 ruby 变量作为 def 名称?
问题描述
不确定这是否可能,但以这种方式优化代码会很好。我正在尝试做这样的事情:
$name2 = 'name2'
def ('name1'+$name2)
...
end
解决方案
您可以使用define_method
,这是一个示例:
>> foo = "bar"
=> "bar"
>> define_method("foo_#{foo}") do
?> puts "Hello from method"
>> end
=> :foo_bar
>> foo_bar
=> Hello from method
推荐阅读
- node.js - MongoDB - 如何根据其他字段的存在来计算字段?
- android - 原生闪屏宽度和高度
- java - Java比较三个字符串数组并使用Binarysearch
- php - box/spout - 使用十六进制颜色与预定义颜色时的大量内存使用
- python - auc = roc_auc_score(y_test, probs) 代码中的错误
- json - 如何使用jq根据json中的值进行分组?
- wordpress - 查看自定义帖子类型类别时出现 404 页面错误
- html - Dropmenu 问题不使用 html 和 css 显示
- node.js - 记录事件源失败
- transactions - 如何识别在销售期间或以折扣价购买的交易