JavaScriptの(3) - 関数、変数のスコープ、方法

1.ファンクション

JavaScriptでは、対象となる機能は、自由に手順を制御することができ、定義された関数は、任意の変数にアクセスできるように、他の関数にネストすることができる時間定義されたスコープです。
1)定義された方法(絶対値関数ABSに()の例のように)
ここに画像を挿入説明
第二の方法定義(2)
ここに画像を挿入説明
これは匿名関数であるが、結果は、ABSに割り当てることができる機能(X){...}は、ABSによって機能を呼び出すことができ、マナーモードは、二つのと等価です

(3)コール
渡すことができる機能、値を呼び出すとき、これらの値は、パラメータと呼ばれます。JavaScriptは、任意のパラメータを渡すことができ、またはパラメータを渡すことがありません
ここに画像を挿入説明
パラメータが問題に渡されたかどうかを決定する問題を手動でスローされた場合、。
ここに画像を挿入説明
ここに画像を挿入説明
(4)引数
引数はJSキーワードの賜物であり、代表で渡されたパラメータの全ては、配列です
ここに画像を挿入説明
ここに画像を挿入説明
質問:引数は、すべてのパラメータが含まれている、私たちは時々 、追加操作に余分なパラメータを使用します。既存のパラメータを除外する必要があります-

(5)残り
の新機能は、ES6を導入し、すでに定義されたパラメータに加えて、すべてのパラメータを取得します
残りのパラメータはのみ可能、最終的な表面で書く、としなければならない識別するために使用されます...
ここに画像を挿入説明
ここに画像を挿入説明

2.変数のスコープ

  • JavaScriptでは、varが実際に変数のスコープ、変数コレクションオブジェクトへのアクセスの範囲、関数を定義しています。
  • 関数宣言外部変数と呼ばれるグローバル変数を、それが現在の文書内の他のコードによってアクセスすることができるので、。変数関数内で宣言と呼ばれる、ローカル変数が唯一現在の関数内でアクセスすることができるので、。

(1)関数本体内のステートメントは、in vitroでの機能が使用されていない(クロージャを振り返ることができ、非単語を達成するために)
ここに画像を挿入説明
二つの機能がある場合に内部関数限り、同じ変数名を使用する(2)競合していない
ここに画像を挿入説明
(3)関数はその逆外部関数の内部のメンバーにアクセスすることはできませんが、
ここに画像を挿入説明
ここに画像を挿入説明
同じ名前の関数の内部(4)変数、外部関数と変数、「外」への「内部」は検索
ここに画像を挿入説明
ここに画像を挿入説明
説明:自分自身からのJavaScript変数内の関数を探しますこの関数は、開始されます内側と外側「を見」 '「」に同じ名前を持つ関数の変数は、変数、外部関数のインナーシールド機能の外部に存在すると仮定する。

(5)変数のスコープを増強

  • 最初の変数を使用し、後で変数を宣言解除変数として、例外をスローしていない
    ここに画像を挿入説明
    ここに画像を挿入説明
    説明:JavaScriptの変数は、「昇格」または関数またはステートメントの前に移動される感じ。しかし、昇降変数の後になります未定義の値を返す代入変数yを強化しません。

  • 運転規制
    ここに画像を挿入説明
    の変数のすべての機能の頭の上に定義された簡単なコードの保守を置き忘れていません、。

(6)グローバル関数

  • グローバル変数
    ここに画像を挿入説明
    ここに画像を挿入説明
    (7)グローバルオブジェクトウィンドウ
    ここに画像を挿入説明
    アラート()関数自体は、ウィンドウ変数である
    ここに画像を挿入説明
    Javascriptが実際にはグローバルスコープ、任意の変数(関数も変数と考えることができる)であり、それは関数スコープで見つからないと仮定すると、であろう外見て、グローバルスコープで見つからない場合は、エラーRefrenceError

  • 仕様
    我々はすべてのグローバル変数は、私たちのウィンドウにバインドされているため。場合は別のJSファイルは、同じグローバル変数を使用して、競合が発生します
    ここに画像を挿入説明
    ソリューション:名前の競合をするグローバルな問題を減らし、独自の名前空間の定義にすべてのコードを置きます。jQueryの

(8)ローカルスコープ:LETは、
ここに画像を挿入説明
ここに画像を挿入説明
から見ることができるローカル変数VARの定義、コンソール11は、この番号から出力される、にconsole.log(I + 1)ステートメントの実装では、スコープのIアウトを使用してもよいですこれは、標準ではありません!

ES6紹介letキーワード、ローカルスコープの解決の競合は
ここに画像を挿入説明
ここに画像を挿入説明
、あなたが変数ローカルスコープの定義によって手放すことを示唆しています

(9)定CONST

前ES6、どのように定数を定義するには:のみ使用という名前のすべての大文字を変数が一定であり、この値を変更しないことをお勧め
ここに画像を挿入説明
ES6を導入して、定数constキーワードを
ここに画像を挿入説明

3.メソッド

(1)メソッドを定義するには、
することがある、オブジェクトの内部の機能に入れオブジェクトは:2つだけあるプロパティとメソッドは
ここに画像を挿入説明
ここに画像を挿入説明
、これがポイントではありませんされ、そのオブジェクトの呼び出しそれにデフォルトのポインティング

(2)この点で適用は、JSを制御することができます
ここに画像を挿入説明

4.内部オブジェクト

標準オブジェクト
ここに画像を挿入説明

4.1日付

処理のための日付と時刻は、オブジェクトの
ここに画像を挿入説明
コンソール出力
ここに画像を挿入説明
変換
ここに画像を挿入説明
コンソール出力を
ここに画像を挿入説明

4.2 JSON

早い段階で、すべてのデータの伝送は、XMLファイルを使用してに慣れています

  • JSONは(JavaScriptオブジェクト表記、JS表記オブジェクト)である軽量データ交換フォーマット
  • シンプルで明確な階層メイクJSON理想的なデータ交換言語。
  • 簡単に解析し、生成し、かつ効果的にネットワーク伝送の効率を改善するために、マシンにも簡単に読み取りおよび書き込み、これだけに。
  • JavaScriptではすべてがサポートJSのいずれかのタイプを表すためにJSONを使用することができ、オブジェクトであり、数、文字列...

フォーマット

  • {}を持つオブジェクト
  • アレイが使用されています[]
  • 値:すべてのキーと値のペアは、キーを使用しています

変換JSON文字列オブジェクトとJS

  • JSON.stringify() ; JSオブジェクトJSON文字列
  • JSON.parse() ; JSON文字列JSオブジェクトは、
    ここに画像を挿入説明
    ここに画像を挿入説明
    JSONやJSオブジェクト識別します
    ここに画像を挿入説明

VAR OBJ = { 'ハロー '、B 'hellob'}; JSがオブジェクト
VARのJSONを= { "": "こんにちは"、 "B": "hellob"}; JSONの文字列は、キーを追加する必要があります""

4.3のAjax

  • AJAX =非同期JavaScriptとXML(非同期JavaScriptとXML) 。
  • AJAXは、新しいプログラミング言語ではありませんが、使用して、既存の規格の新しい方法を
  • 最大の利点は、ページ全体をリロードせずにAJAXでは、ページのコンテンツのサーバと更新パーツとデータを交換することができます。
  • AJAXは、任意のブラウザプラグインが必要ですが、ブラウザでJavaScriptの実行を許可するユーザーを必要としません。
  • JSネイティブ非同期要求書かXHR
  • メソッドjQueyパッケージ$( "#名")。アヤックス( "")
  • リクエストaxios
公開された62元の記事 ウォンの賞賛2 ビュー2741

おすすめ

転載: blog.csdn.net/nzzynl95_/article/details/103915706