rugby - interactive ruby download
Comportamiento extraño con ''_''(guión bajo) en Ruby (2)
Solo curiosidad por eso.
Si abre el IRB y escribe _
, obtendrá nil
como respuesta:
irb(main):001:0> _
=> nil
Y puedes modificar su valor:
irb(main):002:0> _ = ''some value''
irb(main):003:0> _
=> "some value"
Pero si creas una nueva variable con _
, su valor se modifica:
irb(main):004:0> foo_bar = ''other value''
irb(main):005:0> _
=> "other value"
¿Por qué? ¿Es esta una decisión de diseño?
Dentro de irb, _
devuelve el resultado de la operación anterior. Así que al abrir una nueva sesión irb, _
será igual a cero ya que no hubo ninguna operación previa
2.0.0p353 :001 > 4
=> 4
2.0.0p353 :002 > 3 + _
=> 7
irb
usa _
para referirse al valor de la última expresión calculada. Así que verás _
cambiado aunque no lo uses en la línea anterior :)