で最近の質問、私は、関数が「ファーストクラス」オブジェクトである JavaScript の側面などについて話すよう提案を受けました。この文脈では、他のオブジェクトとは対照的に、「ファーストクラス」とはどういう意味ですか?
編集 (Jörg W Mittag): 完全に重複:「ファーストクラスのプログラミング構造とは何ですか?」
ベストアンサー1
引用するウィキペディア:
コンピュータ サイエンスでは、プログラミング言語が関数をファーストクラス オブジェクトとして扱う場合、そのプログラミング言語はファーストクラス関数 (または関数リテラル) をサポートしていると言われます。具体的には、プログラムの実行中に新しい関数を構築し、それをデータ構造に格納し、他の関数に引数として渡し、他の関数の値として返すことを言語がサポートしていることを意味します。
このページでも示す美しく:
実際、他の変数と同じように
- 関数はオブジェクト型のインスタンスである
- 関数はプロパティを持つことができ、コンストラクタメソッドへのリンクを持つことができる。
- 関数を変数に保存することができます
- 関数を別の関数のパラメータとして渡すことができます
- 関数から関数を返すことができます
TrayMan のコメントも読んでみました。興味深いですね...