web-dev-qa-db-ja.com

関数スコープ外のアクセス変数

これは、私が達成しようとしていることの簡易バージョンですが、関数のスコープ外に変数を渡したいです。関数外で変数を宣言していますが、取得できません。

HTML:

<p>5</p>
<p>6</p>
<p>7</p>

JS:

$(document).ready(function () {
    var gsd = "";
    $("p").each(function () {
        if ($(this).text() === "5") {
            var gsd = $(this).text();
            alert(gsd); // this works
        }
    })
    alert("get var outside func" + gsd); //does not work
});
23
user2232681

関数内でgsdを新しい変数として再宣言します。関数内のvarの前にあるgsdを削除して、外部スコープのgsdに対応します。

29
Igor