
1 2 3 4 5 6 7 8 9
|
hash = Hash.new array = [1,2,3,4] array.each do | val | temp_array = Array.new temp_array.push val hash[val]=val end puts hash puts temp_array
|
最终hash可以正常输入,temp_array会报错。
所以在block外部声明过的变量,block执行时时会把他绑定代入方法中,但是在block内部定义的额外绑定作用域只在其内部有效。
近期评论