次の不自然な JavaScript を想定してください。
function do_something() {
var x = 5;
function alert_x() {
alert(x);
}
alert_x();
}
do_something();
変数x
は関数に対してローカルdo_something
です。これは、すべてのスコープで使用できるわけではないため (つまり、 wheredo_something
が呼び出されるなど、どちらの関数の外部でも)、グローバル変数ではありません。
x
しかし、「変数は関数に対してグローバルである」と言うのは適切でしょうalert_x
か? この意味で「グローバル」は相対的な用語として使用できますか?