ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript変数スコープ解析(詳細説明)
この章では、JavaScript 変数のスコープ分析 (詳細な説明) を紹介します。これにより、JavaScript スコープに関するちょっとした知識を学ぶことができます。困っている友人は参考にしていただければ幸いです。
JavaScript スコープとは何ですか?
JavaScript では、スコープはアクセス可能な変数、オブジェクト、関数のコレクションです。
スコープは関数内で変更できます。
JavaScript ローカル スコープ
変数は関数内で宣言され、ローカル変数 (ローカル スコープ)です。
ローカル変数:関数内でのみアクセスできます。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <button onclick="myFunction(1,2)">试一试</button> <p id="demo"></p> </body> <script type="text/javascript"> function name() { //在此处声明一个变量 var a = 10; //函数内可以调用 a } //此处(函数外)不能调用变量 a //因为局部变量只作用于函数内,所以不同的函数可以使用相同名称的变量名 //局部变量在函数开始执行时创建,函数执行完毕后,变量会自动销毁 </script> </html>
JavaScript グローバル変数
関数の外部で定義された変数はグローバル変数です。
グローバル変数にはグローバル スコープがあり、Web ページ内のすべてのスクリプトと関数で使用できます。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <button onclick="myFunction(1,2)">试一试</button> <p id="demo"></p> </body> <script type="text/javascript"> /* 在此处声明一个全局变量 */ var a = 10; function name() { //函数内可以调用 a } //此处也能调用变量 a </script> </html>
変数が関数内で宣言されていない (var キーワードを使用して宣言されていない) 場合、変更量はグローバル変数になります。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <button onclick="myFunction(1,2)">试一试</button> <p id="demo"></p> </body> <script type="text/javascript"> function name() { /* 在此处声明一个变量 */ a = 10; /* a没有使用var关键字声明,则默认为全局变量 */ } </script> </html>
JavaScript 変数のライフ サイクル
変数のライフ サイクルは、宣言時に初期化されます。ローカル変数は、関数の実行が完了すると破棄されます。グローバル変数は、ページが閉じられると破棄されます。
関数パラメータ
関数パラメータは関数内でのみ機能し、ローカル変数です。
HTML のグローバル変数
HTML では、グローバル変数はウィンドウ オブジェクトであり、すべてのデータ変数はウィンドウ オブジェクトに属します。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <button onclick="myFunction(1,2)">试一试</button> <p id="demo"></p> </body> <script type="text/javascript"> function name() { a = 10; } //此处可使用window.a调用变量 a </script> </html>
グローバル変数または関数は、ウィンドウ オブジェクトの変数または関数をオーバーライドできます。ローカル変数にはウィンドウ オブジェクトが含まれており、グローバル変数や関数をオーバーライドできます。
let キーワードと const キーワードは es6 で提供されます
let の宣言方法は var の宣言方法と同じです。var の代わりに let を使用して変数を宣言すると、現在の変数を次のように制限できます。コードブロック。
const を使用して定数を宣言すると、その値は一度設定されると変更できません。
以上がJavaScript変数スコープ解析(詳細説明)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。