変数のスコープ
スコープとは
変数が有効な範囲のこと。ローカル変数とグローバル変数ではスコープが違う。ローカル変数
とある場所で使われている変数の名前を、別のところで使っても影響が及ばないのであれば、違う変数として扱われる。グローバル変数
プログラムの中のどこで使われても、同じ名前だったら必ず同じ変数として扱われる。グローバル変数はプログラム全体のどこからでも変更が可能なので、一般的に好まれない。
ローカル変数は、最初に代入された時に初期化される。
irb(main):001:0> x + 10 NameError: undefined local variable or method `x' for main:Object from (irb):1 from /usr/bin/irb:12:in `<main>' irb(main):002:0> x = 10 => 10 irb(main):003:0> x + 10 => 20 irb(main):004:0>