0

也许我一直盯着我的 Ruby 书看,以至于文字不再具有任何意义,但我想我还是问问吧。

我想要做的是,而不是通过我的函数头传递大量变量,或者不是使用全局变量,我希望将我的变量保存在一个方法中,并在我的整个过程中多次调用它们功能。我实际上遇到的问题是范围。

def DateGrab()
 print "\nEnter the date you're looking for (Month/Day): "
 longdate = gets.strip.split(/\/| /)
 if longdate[0].length > 3
   month = longdate[0].slice(0..2)
 else
   month = longdate[0]
 end
  day = longdate[1]
  year = `date | awk '{print $6}'`.strip
  grepdate = "#{day}/#{month}/#{year}"
  date = Date.parse("#{day}-#{month}-#{year}").strftime('%m%d%Y').strip
end

我正在寻找通过多个函数传递“grepdate”和“date”,我觉得使用方法会更容易,但每次我尝试调用变量时,都会出现“未定义的局部变量或方法”错误。

4

1 回答 1

0

您想查看实例变量。您可以通过@grepdate = "something"这些实例变量来设置它们,这些实例变量可以在整个类和该类的所有方法中访问。

于 2012-09-25T15:46:11.400 回答