関数ステートメントを関数式に変換する方法

こんにちは世界

私はIIFE(即時呼び出し関数式)を研究しており、一般的なパターンとその仕組みを理解しています。

(function boo(y) {
  alert(y);
})(2); // call, not a grouping operator, 2

この場合:

function body(y){
  alert(y);
}(2);

(2)は単なるグループ化演算子であり、関数ステートメントの呼び出しとは関係ありません。これは次と同じです。

function body(y) {
  alert(y);
}

(2);

これらの2つの関数が関数ステートメントの代わりに関数式を作成する方法がわかりません。

2, function () {
  alert('anonymous function);
}();

// OR 

!function () {
  alert('Hello World');
}();

これらの2つの関数はどのように式として機能しますか?それらが無名関数であることがわかりますが、それらがどのように式であるかわかりませんか?何らかの構文エラーをスローする代わりに、なぜそれらが実行されるのですか?

クッキーモンスター

まず、どの例も「関数ステートメント」とは呼ばれていません。これは、関数宣言のように見えますが、ステートメントブロックに表示される構文のMozillaのみの区別です。

この場合:

関数body(y){ 
  alert(y); 
}(2);

(2)は単なるグループ化演算子であり、関数ステートメントの呼び出しとは何の関係もありません。

はい、(2)関数宣言が引き上げられているため、はグループ化演算子(2)になります。したがって、は実際にはそれに続きません。

...それは次と同じです:

関数body(y){ 
 alert(y); 
} 

(2);

はい、空白は無視されます。

これらの2つの関数が関数ステートメントの代わりに関数式を作成する方法がわかりません。

2、function(){ 
 alert( 'anonymous function); 
}();

//または

!function(){ 
 alert( 'Hello World'); 
}();

オペランドに式を必要とする演算子が存在するため、これらは式です。このように、関数はオペランドになり、必要な式として評価されます。

したがって、プログラムが解析され、たとえばに遭遇すると、次に!来るのは式でなければならないことがわかっているので、その後に続くものを評価するfunction () {...と、それが有効な式であると見なされ、解釈されます。など。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

検証関数をifステートメントからswitchステートメントに変換する

分類Dev

複数のifステートメントを持つ関数を矢印関数に変換する方法はありますか?

分類Dev

文字ステートメントをアルファベット順に数値に変換するR関数

分類Dev

複数のifelseステートメントを持つ関数を辞書に変換する

分類Dev

If-Elseステートメントを数式に変換する

分類Dev

If-Elseステートメントを数式に変換する

分類Dev

関数のテキスト式を「実際の」式に変換する

分類Dev

postgresql-ifステートメントの関数呼び出しによって変数を定義する方法

分類Dev

テンプレートクラスのテンプレート関数を関数ポインタに変換する方法

分類Dev

IFステートメントでphp関数を使用する方法

分類Dev

def関数のifステートメントを修正する方法

分類Dev

Excel-VBA:If-Else-数値からテキストへの変換に関するステートメント

分類Dev

If関数内にIfステートメントを追加する

分類Dev

関数にIfステートメントを追加する

分類Dev

if / elseステートメントをjquery関数に追加する

分類Dev

forステートメント内でworkを関数にする方法は?

分類Dev

関数からifステートメントに変数を渡す

分類Dev

Informatica PowerCenterの式変換でcasewhenステートメントを実装するためのDecodeとIIF以外の関数はありますか?

分類Dev

ifステートメントjasminkarmaangular内の関数をテストする方法

分類Dev

IFステートメントに対する複数の関数

分類Dev

IFステートメントに対する複数の関数

分類Dev

ifステートメントと変数を使用してbash関数を作成する方法

分類Dev

関数内に複数の条件を含むIfステートメントをフォーマットする方法

分類Dev

SELECTステートメントの関数に影響がある場合にCURSORを置き換える方法

分類Dev

スクリプトのIfステートメントにLastRow関数とテキストを挿入する方法

分類Dev

クラスコンポーネントを関数ステートレスコンポーネントに変換する方法は?

分類Dev

クラスコンポーネントを関数コンポーネントに変換する方法

分類Dev

関数をスクリプトメソッドに変換する方法は?

分類Dev

numpy関数用に2つの変数ステートメントを1つに結合するPython

Related 関連記事

  1. 1

    検証関数をifステートメントからswitchステートメントに変換する

  2. 2

    複数のifステートメントを持つ関数を矢印関数に変換する方法はありますか?

  3. 3

    文字ステートメントをアルファベット順に数値に変換するR関数

  4. 4

    複数のifelseステートメントを持つ関数を辞書に変換する

  5. 5

    If-Elseステートメントを数式に変換する

  6. 6

    If-Elseステートメントを数式に変換する

  7. 7

    関数のテキスト式を「実際の」式に変換する

  8. 8

    postgresql-ifステートメントの関数呼び出しによって変数を定義する方法

  9. 9

    テンプレートクラスのテンプレート関数を関数ポインタに変換する方法

  10. 10

    IFステートメントでphp関数を使用する方法

  11. 11

    def関数のifステートメントを修正する方法

  12. 12

    Excel-VBA:If-Else-数値からテキストへの変換に関するステートメント

  13. 13

    If関数内にIfステートメントを追加する

  14. 14

    関数にIfステートメントを追加する

  15. 15

    if / elseステートメントをjquery関数に追加する

  16. 16

    forステートメント内でworkを関数にする方法は?

  17. 17

    関数からifステートメントに変数を渡す

  18. 18

    Informatica PowerCenterの式変換でcasewhenステートメントを実装するためのDecodeとIIF以外の関数はありますか?

  19. 19

    ifステートメントjasminkarmaangular内の関数をテストする方法

  20. 20

    IFステートメントに対する複数の関数

  21. 21

    IFステートメントに対する複数の関数

  22. 22

    ifステートメントと変数を使用してbash関数を作成する方法

  23. 23

    関数内に複数の条件を含むIfステートメントをフォーマットする方法

  24. 24

    SELECTステートメントの関数に影響がある場合にCURSORを置き換える方法

  25. 25

    スクリプトのIfステートメントにLastRow関数とテキストを挿入する方法

  26. 26

    クラスコンポーネントを関数ステートレスコンポーネントに変換する方法は?

  27. 27

    クラスコンポーネントを関数コンポーネントに変換する方法

  28. 28

    関数をスクリプトメソッドに変換する方法は?

  29. 29

    numpy関数用に2つの変数ステートメントを1つに結合するPython

ホットタグ

アーカイブ