Prev: string array
Next: print to a label printer directly
From: cczona on 26 Mar 2010 12:44 Okay, I must just be too sleep-deprived to see it. Why is Hash.each (and the other enumerables) returning nothing but nils when clearly the hash is being populated? $foo={'a' => '1', 'b'=> '2'} puts $foo.length puts $foo.nil? puts $foo.keys puts $foo.values puts "\n\n" $foo.each do |k, v| print $k, " and ", $v, "\n\n" # returns 'nil and nil' end Thank you.
From: Rick DeNatale on 26 Mar 2010 12:51 On Fri, Mar 26, 2010 at 12:45 PM, cczona <cczona(a)gmail.com> wrote: > Okay, I must just be too sleep-deprived to see it. Why is Hash.each > (and the other enumerables) returning nothing but nils when clearly > the hash is being populated? > > $foo={'a' => '1', 'b'=> '2'} > > puts $foo.length > puts $foo.nil? > puts $foo.keys > puts $foo.values > puts "\n\n" > > $foo.each do |k, v| > print $k, " and ", $v, "\n\n" # returns 'nil and nil' > end > > Thank you. $k and $v are global variables, k and v are locals I rarely use global variables (other than system globals). I'd rewrite the above code as foo={'a' => '1', 'b'=> '2'} puts foo.length puts foo.nil? puts foo.keys puts foo.values puts "\n\n" foo.each do |k, v| print k, " and ", v, "\n\n" end -- Rick DeNatale Blog: http://talklikeaduck.denhaven2.com/ Twitter: http://twitter.com/RickDeNatale WWR: http://www.workingwithrails.com/person/9021-rick-denatale LinkedIn: http://www.linkedin.com/in/rickdenatale
|
Pages: 1 Prev: string array Next: print to a label printer directly |