グローバル関数から無名(匿名)関数に入りたい
Google API の JavaScriptクライアントライブラリを使っているのですが、グローバル関数から無名関数の処理の中に入る(?)よい方法が思い浮かばず悩んでいます。
</body>の前に、(1)自分のJavaScript読み込み (2)Google API読み込み を記載しています。
:
<script src="MY.js"></script>
<script src="https://apis.google.com/js/client.js?onload=GoogleApiLoad"></script>
</body>
MY.js では、グローバルな名前をできるだけ作らないよう無名関数の中で、Google API とは関係なく先にできる処理を行ってます。
!function(){
// 先にできることいろいろ
}();
そして、Google API のロード完了後に、この無名関数の中で処理を続行したいのですが、どんなコードにすればよいのかわかりません。
Google API の使い方は、ロード完了したタイミングでコールバック関数を実行する方式(client.js?onload=XXX)が公式的なようなので、それに従っています。
https://developers.google.com/api-client-library/javascript/start/start-js
このコールバック関数(上の例ではGoogleApiLoad)は、グローバルな名前でないといけないと思いますが、そうすると、
!function(){
// 先にできることいろいろ
// Google APIロード完了後はAPIを使っていろいろ
}();
function GoogleApiLoad(){
// Google APIロード完了
}
・基本は無名関数で自分のJavaScriptコードを実行している中で、
・Google API がロード完了したら、その無名関数の中でAPIを使って処理を続行する
というやり方をしたい時に、どうすればよいのか・・よい方法が思い浮かびません。。
こういう時は、どうするのがよいのでしょうか?
よろしくお願いいたします。