如何使用Ruby中的函数名称从字符串中调用函数?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (44)

示例代码:

event_name = "load"

def load()
  puts "load() function was executed."
end

def row_changed()
  puts "row_changed() function was executed."
end 

#something here to see that event_name = "load" and run load()

提问于
用户回答回答于

直接在对象上调用函数

a = [2, 2, 3]
a.send("length")

如预期的那样返回3

或用于模块功能

FileUtils.send('pwd')
def load()
    puts "load() function was executed."
end

send('load')
用户回答回答于

用这个:

> a = "my_string"
> meth = a.method("size")
> meth.call() # call the size method
=> 9

很简单对吧?

扫码关注云+社区