昨日来の強い風もおさまり、20℃近かった気温も急激に下がった今日でしたが、日差しが快く
二重川沿いの散歩コースに行く。
鎌ヶ谷付近から川を下り、ゴルフ練習場を過ぎた地点で、小鳥の飛ぶ気配がする。
よもや、と思い目をこらすと、居ましたカワセミが!
カメラでは中々捉えられませんでした。
とにかく、連射モードに設定し撮りまくりました。
その一枚が、この写真です。
ピントが甘くボケていますが、もうこれがコンデジの限界です。
def bar
yield 10
end
bar {|v|
p v + 3
}
def yield(v)どうでしょう。関数からメインをコールするように主客が逆転しています。
p v + 3 # メイン内のブロック
end
yield(10) # 関数内の yield 10
def foo(x,y)
x + yield(6,y)
end
bar (1, 3){|a,b|
a / b
} #=> 3
def yield(a,b)と、書き換えることができます。
a / b
end
yield(6, 3) #=> 2
コールバック関数は,HTTP通信の状態が変化したタイミングで内部的に呼び出される関数です。コールバック関数を利用することで,以下のような処理を定義することが可能になります。
・応答待ちの状態を画面上に表示する
・サーバーから正常な応答を受け取ったタイミングでページの内容を更新する
・サーバーからエラーを受け取った場合にエラー・メッセージを表示する
コールバック関数を定義するのは,onreadystatechangeプロパティの役割です。onreadystatechangeプロパティでは,
xmlReq.onreadystatechange = showResponse;
のように,別に定義した関数名(ここではshowResponse)を指定することもできますが,本サンプルではよりシンプルに匿名関数を利用しています。匿名関数とは,その名の通り名前のない関数のことで,以下のようにプロパティ値に直接格納することもできます。
xmlReq.onreadystatechange = function() {
...関数定義...
}
<------ (以上が引用部分) ------>
要は、onreadystatechangeプロパティに、関数名(関数のアドレス?)を設定することにより、その関数が
サーバからコールバックされるということ。
2022/04/13 MySTの翻訳環境作り サイドメニューをプログラムで変換可能にすること 作業の中心場所 – jupyter notebook : g:\jupyter\python pythonをwebでも可能に – g:\webapp\Doc-tools ...