我使用的是Ruby 2.4。如何应用我的辅助函数,taht将一个参数应用于数组的每个元素?我有这个数组
arr = ["ele1", "ele2", ...]
我有一个方法可以读取" MyModule.my_function(arg)",我希望将其应用于数组的每个元素。但尝试以下结果会导致错误。
2.4.0 :005 > arr.map(&MyModule.my_function)
ArgumentError: wrong number of arguments (given 0, expected 1)
答案 0 :(得分:2)
arr.map(&MyModule.my_function)
尝试在没有参数的情况下调用MyModule.my_function
,这会给出上面的错误消息。
你可以使用:
arr.map{ |x| MyModule.my_function(x) }
或
arr.map( &MyModule.method(:my_function) )