Core JavaScript 3.this

この記事はweb開発に欠かせないJavaScriptのコアな概念をしっかり理解しようということでCore Javascript(韓国語)を要約した内容になります。 3. this 目次 概要 状況によって変わるthis グローバル領域のthis メソッドを呼び出す時そのthis 関数を呼び出す時のthis コールバック関数呼び出す時のthis 概要 大体のプログラミング言語でのthisは、クラスから生成されたインスタンスオブジェクトを指す。 JavaScriptにおけるthisは、関数とオブジェクトを区分する唯一の機能で、状況によって中身が変わる。...

Core JavaScript 2.実行コンテキスト - スコープチェーン・this

この記事はweb開発に欠かせないJavaScriptのコアな概念をしっかり理解しようということでCore Javascript(韓国語)を要約した内容になります。 2. 実行コンテキスト 目次 コンテキストとは VariableEnvironment LexicalEnvironment ホイスティング 関数宣言と関数式 スコープとスコープチェーン グローバル変数とローカル変数 まとめ スコープとスコープチェーン JavaScriptにおけるスコープとは、識別子の有効範囲である。 その有効な識別子を関数の中から外へ順次検索していく動作をスコープチェーンという。 スコープチェーン

Core JavaScript 2.実行コンテキスト - ホイスティングと関数式

Chap2. 実行コンテキスト 目次 VariableEnvironment LexicalEnvironment ホイスティング 関数宣言と関数式 VariableEnvironment 実行コンテキストが生成する時、まずVariableEnvironmentに情報を入れて、それをコピーしてLexicalEnvironmentと作る。 その後は主にLexicalEnvironmentを活用することになる。 各Environmentは、 EnvironmentRecord Outer-EnvironmentReference で構成される。 LexicalEnvironment lexicalの意味 ...

Core JavaScript 2.実行コンテキスト

この記事はweb開発に欠かせないJavaScriptのコアな概念をしっかり理解しようということでCore Javascript(韓国語)を要約した内容になります。 2. 実行コンテキスト 実行コンテキストとは、実行するコードに提供する感情情報をまとめたオブジェクトである。 JavaScriptエンジンはある実行コンテキストが活性化される時点に宣言された変数を巻き上げて(ホイスティング)外部環境情報を構成し、thisを設定するなど動作を行う。 環境情報はコールスタックとして積み上げておいて、一番上の情報データと関連のあるコードを実行する形で全体のコードの環境と実行順を保証する。 自動的に生成されるグローバル領域とStringのJavaScriptコードを評価するeval()の実行、そして関数(function)を実行することでコンテキストを構成することができる。 実行コンテキストとコールスタック // ---------------------------------- (1) var a...

Core JavaScript 1.データタイプ - undefinedとnull

この記事はweb開発に欠かせないJavaScriptのコアな概念をしっかり理解しようということでCore Javascript(韓国語)を要約した内容になります。 undefinedとnull undefinedとnullはどちらも「何もない」状態を示す値である。 undefinedはJavaScriptエンジンが勝手に付与する場合がある。 undefinedを付与する場合 var a; console.log(a); // (1)...