私たちはこのオープンソースプロジェクトを世界中の人々に提供したいと考えています。このチュートリアルの内容をあなたが知っている言語に翻訳するのを手伝ってください。関数を作るもう1つの方法があります。ほとんど使われませんが、代替手段がない場合が時々あります。functionBody)言い換えると、関数パラメータが最初で、本体が最後に来ます。全ての引数は文字列です。例を見ると理解し易いです。3もし引数がない場合、1つの引数(関数本体)だけになります。関数は文字列から文字通り作られ、実行時に渡されるということです。これまでの宣言では、プログラマーはスクリプトに関数コードを書く必要がありました。任意の文字列を関数にすることができます。Function(str);func();これはサーバからコードを受け取ったり、テンプレートから動的に関数をコンパイルするような、非常に特定のケースで使われます。その必要性は通常開発がかなり進んだ段階で発生します。どこで生成されたかを覚えています。それは作成された場所からレキシカル環境を参照します。現在のレキシカル環境ではなく、グローバルのレキシカル環境を参照します。特殊な機能は奇妙に見えますが、実践では非常に役立ちます。本当に文字列から関数を作る必要がある場合をイメージしてください。その関数のコードはスクリプト生成時には知られていません(そういう訳で通常の関数を使うことができません)が、実行中に認識されます。我々はサーバや別のソースからそれを受け取ることができます。新しい関数はメインスクリプトと相互作用する必用があります。私たちは、それが外部のローカル変数へアクセスできるようにしたいかもしれません。余分なコメントやスペースなどを削除することでコード小さくする特別なプログラムで、より重要なことはローカル変数をより短いものにリネームします。使用して圧縮されていることです。置き換え、随所でそれを実行します。変数はローカルであり関数の外部からアクセスすることはできないため、それは通常安全です。それに関する全ての箇所を置き換えます。は賢いので、単なる検索と置換ではなく、コード構造を分析するので問題ありません。見つけることはできません。私たちをミスから救います。良いコードを実行します。Functionによって作成された関数に何かを渡す必要がある場合、引数として明示的に渡す必要があります。body);歴史的な理由から、引数はカンマ区切りのリストで与えられます。持っており、外部のレキシカル環境ではありません。従って、それらは外部の変数を使うことができません。それは実際に良いことです。それは我々をエラーから守るからです。明示的なパラメータ渡しは構造的にははるかに優れており、minifierには問題ありません。前のレッスン次のレッスンシェアチュートリアルマップコメントコメントをする前に読んでください...自由に記事への追加や質問を投稿をしたり、それらに回答してください。タグを使ってください。codepen...)。記事の中で理解できないことがあれば、詳しく説明してください。Kantorプロジェクトについてコンタクト。