ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript変数スコープ解析(詳細説明)

JavaScript変数スコープ解析(詳細説明)

青灯夜游
青灯夜游オリジナル
2018-09-13 17:50:421131ブラウズ

この章では、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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。