JavaScriptのスコープ

スコープからアクセス可能な変数のコレクション。


JavaScript スコープ

JavaScript では、オブジェクトと関数も変数です。

JavaScript では、スコープはアクセス可能な変数、オブジェクト、関数のコレクションです。

JavaScript 関数のスコープ: スコープは関数内で変更されます。


JavaScript ローカル スコープ

変数は関数内で宣言され、変数はローカル スコープです。

ローカル変数: 関数内でのみアクセスできます。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>php中文网(php.cn)</title>
</head>
<body>
<p>局部变量在声明的函数内可以访问。</p>
<p id="demo"></p>
<script>
    myFunction();
    document.getElementById("demo").innerHTML =
            "我可以显示 " +  typeof carName;
    function myFunction()
    {
        var carName = "Volvo";
    }
</script>
</body>
</html>

プログラムを実行して試してください


ローカル変数は関数内でのみ機能するため、異なる関数で同じ名前の変数を使用できます。

ローカル変数は関数の実行開始時に作成され、関数の実行後に自動的に破棄されます。


JavaScript グローバル変数

関数の外で定義された変数はグローバル変数です。

グローバル変数にはグローバル スコープがあります。Web ページ内のすべてのスクリプトと関数を使用できます。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>php中文网(php.cn)</title>
</head>
<body>
<p>全局变量在任何脚本和函数内均可访问。</p>
<p id="demo"></p>
<script>
    var carName = "Volvo";
    myFunction();
    function myFunction()
    {
        document.getElementById("demo").innerHTML =
                "我可以显示 " + carName;
    }
</script>
</body>
</html>

プログラムを実行して試してください


関数内で変数が宣言されていない場合 (var キーワードを使用せず)、変数はグローバル変数です。

次の例では、carName は関数内にありますが、グローバル変数です。

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
</head>
<body>
<p>
如果你的变量没有声明,它将自动成为全局变量:
</p>
<p id="demo"></p>
<script>
myFunction();
document.getElementById("demo").innerHTML =
"我可以显示 " + carName;
function myFunction() 
{
    carName = "Volvo";
}
</script>
</body>
</html>

プログラムを実行して試してみましょう


HTMLのグローバル変数

HTMLでは、グローバル変数はウィンドウオブジェクトです: すべてのデータ変数はウィンドウオブジェクトに属します。

<!DOCTYPE html>

<html>
<head>
    <meta charset="utf-8">
    <title>php中文网(php.cn)</title>
</head>
<body>
<p>
    在 HTML 中, 所有全局变量都会成为 window 变量。
</p>
<p id="demo"></p>
<script>
    myFunction();
    document.getElementById("demo").innerHTML =
            "我可以显示 " + window.carName;
    function myFunction()
    {
        carName = "Volvo";
    }
</script>
</body>
</html>

プログラムを実行して試してみましょう



学び続ける
||
<html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <p> 在 HTML 中, 所有全局变量都会成为 window 变量。 </p> <p id="demo"></p> <script> myFunction(); document.getElementById("demo").innerHTML = "我可以显示 " + window.carName; function myFunction() { carName = "Volvo"; } </script> </body> </html>