在ruby中,如何将函数的响应/结果转换为数组?

时间:2015-03-18 16:54:50

标签: ruby arrays function store

在ruby中,如何将函数响应转换为数组以供以后使用?

array = []
def function (subject1)
    results = client.get('/subjects', :genre => subject1)
    results.each { |r| puts r.title }
    array << r.title
end

function(subject1)

我的代码看起来像上面的类似内容。然而,我的结果从未存储过。拜托,谢谢你的帮助:)。

3 个答案:

答案 0 :(得分:2)

每个方法都会遍历每个元素,而map会返回一个数组。

def function(subject1)
    results = client.get('/subjects', :genre => subject1)
    results.map { |r| r.title }
end

function(subject1)

答案 1 :(得分:1)

“但我的结果永远不会存储” - 然后存储结果:

result = function(subject1)

答案 2 :(得分:-2)

或者你可以使数组成为全局var

$array = []
def function (subject1)
  results = client.get('/subjects', :genre => subject1)
  results.each { |r| $array << r.title }
end

function(subject1)

或者你可以这样做

array = []
def function (subject1)
  results = client.get('/subjects', :genre => subject1)
  results.each { |r| puts r.title }
end

array = function(subject1)