2016-08-22 2 views
0

は、次のコードは一度だけ実行されますが、Google Appsスクリプトでは、(明らかに、本体とスクリプトタグが省略されます)を2回実行されます。つまりGoogle Appsスクリプトの実行順序:関数を定義するだけで関数が呼び出されるのはなぜですか? JavaScriptで

<body> 
    <script> 
    hi(); 
    function hi() { 
     alert('hi') 
    } 
    </script> 
</body> 

を、GoogleAppsスクリプトで単に定義します関数がそれを呼び出します。 Code.gsの次のコードは、未定義の引数を渡して実行されます。

function createQuery(keywords, dateRange) { 
} 

関数を呼び出さずに関数を定義するにはどうすればよいですか?ドキュメントへのポインタが役立ちます。私は成功なしに彼らを磨きました。

+1

2回実行されません。証明を示す。 –

答えて

1

GASでは、上部にツールバーを使用して機能を保存してテストします。ツールバーを使用して実行するように関数に指示することで、関数を呼び出すことになります。あなたが持っているすべてのトリガーは、コードの中で '呼び出し'せずに実行するよう呼び出すでしょう。

コードの後半で関数を呼び出すことで、関数の実行方法とタイミングをより細かく決定できます。これはネストした関数や他の関数の中で行うことができます。関数を定義する場所にかかわらず、最終的には、トリガーを作成するか、ツールバーを使用して関数を実行する必要があります。

参照コードが非常に詳細ではないので、ダブルコールをどのように見ているのかよく分かりません。スクリプトを実行するには、トリガを設定するか、実行時に追加するトリガを自分で実行する必要があります。同じコードを実行するように指示するコードを実行すると、無限ループが発生します。

ユーザーはあなたの質問と問題をより正確に理解できるため、より多くのデータと参照を提供する必要があります。また、GASの基礎とJavascriptの使い方についてのリファレンスとガイドを読むこともできます。

関連する問題