質問: 様々な技術系の記事やドキュメントで「コンテキスト」という言葉がでてきますが、何を指しているのかよく分かりません。 「コンテキスト」という言葉自体は調べたのですが、利用されている状況によって意味が異なるため、結局何を指しているのか理解ができないです。 例えば、以下の記事やドキュメントの「コンテキスト」が何を指しているのかが分からないです。 * 「Global context」 「Function context」 * 「this コンテキストを持ちます。」 上記の「コンテキスト」が何を指しているか教えていただけますか。 また、「コンテキスト」を別の言葉で言い換えることはできますか? そもそも「コンテキスト」という言葉自体が曖昧(だと思ってる)なため、 回答しづらい質問で申し訳ありませんが、よろしくお願いいたします。 --- 今回の質問は人によって回答が異なるものだと想定しています。そのため、できる限り多くの方々の意見・回答を見るために、以下のサイトにも同様の質問を投稿しています。 結果として4人の方から回答をいただくことができました。どの回答も非常にためになり、イメージを掴むことができたため解決にしました。
回答: 家族同士でお互いの名前を呼ぶ場合、名字を使う事はまずありません。 それは名字が家族にとって自明であり、これをコンテキストとしているからです。 Windowsでファイルを右クリックしてコンテキストメニューを表示し、「開く」メニューをクリックする時は通常「(ファイル名)を開く」とは書いていません。単に「開く」と書かれているだけです。 そのファイルを右クリックしているため、開く目的のファイル名は自明であり、これをコンテキストとしているからです。 `Global context`とは、`this`がグローバルオブジェクトとなっているコード上の位置を示しています。 グローバルに定義された`myFunc`はグローバルコンテキストにおいてそれがグローバルである事を明示せずに`myFunc()`と呼び出すことができます。 対照的に`Function context`では、`this`がその関数の呼び出し元のオブジェクトを指すコードの位置を示しています。 ですので: コンテキスト = 背景となる情報 〜コンテキストを持つ = 〜という背景が定義されている あたりが妥当なんではないかと思います。